Skip to content

Instantly share code, notes, and snippets.

@sgobin
Created May 26, 2016 19:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save sgobin/df3850debde1f2968a72350f231949a5 to your computer and use it in GitHub Desktop.
Save sgobin/df3850debde1f2968a72350f231949a5 to your computer and use it in GitHub Desktop.
General baseline grid/row calculator. Uses leading, page size and desired rows to generate grid options based on paper size.
#pede numero de rows e leading desejado
rows = int(input("Quantas rows: "))
leading = float(input("Leading em pontos: "))
alturaPapel = float(input('Altura do papel em pol: '))
#Calcula tamanho do papel em pontos
def convAltura(h):
return h*72
#Calcula tamanho total do frame baseado em linhas de texto por row
def calculaFrame(r,ld,f):
i = 1
#Cabeçalho
print('')
print('Tamanho de Frame para %s rows e %spt leading' % (rows, leading))
print('-' * 45)
#Loop com as fileiras
for i in range(1,12):
tamFrame = ((r*i)+(r-1))*ld
margens = (f - tamFrame)/2 #calcula margens restantes
margensMM = round(margens*0.3528, 3) #Converte as margens de pts para mm
if i < 10:
print(' %s linha/row = %spt e margens de %spt (%smm)' % (i, tamFrame, margens, margensMM))
else:
print('%s linha/row = %spt e margens de %spt (%smm)' % (i, tamFrame, margens, margensMM))
print('')
folha = convAltura(alturaPapel)
calculaFrame(rows,leading,folha)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment