Skip to content

Instantly share code, notes, and snippets.

@neves
Created May 5, 2012 13:52
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 neves/2602631 to your computer and use it in GitHub Desktop.
Save neves/2602631 to your computer and use it in GitHub Desktop.
pdf2swf-bug

pdf2swf is generating wrong character encoding.

version: 0.9.2

OS: MacOS Lion

The rendering is perfect, but the character information of the glyph is incorrect. For example, in some files, the letter "n" became a character with the follow byte sequence: 238,128,167. (instead of the expected 110 char ord).

Samples:

Compare 017.txt (output from pdftotext -raw 017.pdf) to 017.swfstrings.txt (output from swfstrings 017.swf > 017.swfstrings.txt).

See that the letter "f" and the letter "i" are wrongly encoded on the 017.swfstrings.txt.

You can see the glyph encoding with: swfdump -F 017.swf | grep encoding

Testing:

pdf2swf -f 017.pdf -o 017.swf
pdffonts 017.pdf > 017.pdffonts.txt
swfstrings 017.swf > 017.swfstrings.txt
swfstrings -f 017.swf > 017.swfstrings-fonts.txt
pdftotext -raw 017.pdf
swfdump -F 017.swf | grep encoding
Display the source blob
Display the rendered blob
Raw
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
VSNMBY+Dax-Bold Type 1C yes yes yes 55 0
VSNMBY+AvenirLTStd-Heavy Type 1C yes yes yes 59 0
VVHCWY+AvenirLTStd-Black Type 1C yes yes yes 64 0
ASWLOO+AvenirLTStd-Light CID Type 0C yes yes yes 73 0
ASWLOO+AvenirLTStd-Light Type 1C yes yes yes 68 0
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 192>
Janson M
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #ec008cff>
#<size 209>
Rev Clín Ortod Dental Press
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 209>
. 2011 dez-2012 jan;10(6):12-7
#<font 2 "VVHCWY+AvenirLTStd-Black-64-0">
#<color #000000ff>
#<size 244>
17
#<font 3 "VSNMBY+AvenirLTStd-Heavy-59-0">
#<color #000000ff>
#<size 244>
Marcos Janson
#<font 5 "ASWLOO+AvenirLTStd-Light-73-0">
#<color #000000ff>
#<size 244>
•
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 244>
Especialista em Ortodontia pela FOB-USP/Bauru. Mestre em Ortodontia pela
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 244>
FOB-USP/Bauru.
#<font 2 "VVHCWY+AvenirLTStd-Black-64-0">
#<color #000000ff>
#<size 244>
Mr J
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 244>
Rua Engenheiro Saint Martin, 22-23 Altos da Cidade
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 244>
CEP: 17.043-080 – Bauru/SP
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 244>
E-mail: jansonm@uol.com.br / www.mjanson.com.br
#<font 2 "VVHCWY+AvenirLTStd-Black-64-0">
#<color #ee303cff>
#<size 244>
endeReço paRa coRRespondência
#<font 1 "VSNMBY+Dax-Bold-55-0">
#<color #f37032ff>
#<size 331>
COnClusÕEs
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
Os desvios do plano rontal da maxila podem ser causados
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
por diversos atores. Assim que são identicados, o principal
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
papel do ortodontista é vericar se existe um componente es-
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
quelético grave (com deormidade acial) ou se o problema é
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
simplesmente dentoalveolar. É necessário estar atento, com
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
conhecimento proundo da estética do sorriso, para identicar
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
qual lado está errado e se o problema é causado pelo exces-
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
so ou deciência vertical unilateral. Deve-se, também, procurar
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
identicar os desvios camufados — que não cam evidentes no
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
sorriso, devido à irregularidade vertical dos dentes, mas apare-
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
cem com grande intensidade quando esses são nivelados.
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
Após o diagnóstico, o paciente, juntamente com o pro-
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
ssional, irá decidir se deseja a correção da ace como um
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
todo (tratamento ortodôntico-cirúrgico) ou se deseja corri-
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
gir somente o sorriso (tratamento ortodôntico compensató-
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
rio). Em ambos os casos é possível atingir bons resultados,
#<font 4 "ASWLOO+AvenirLTStd-Light-68-0">
#<color #000000ff>
#<size 331>
com a satisação do paciente.
Janson M
Rev Clín Ortod Dental Press
. 2011 dez-2012 jan;10(6):12-7
17
Marcos Janson
•
Especialista em Ortodontia pela FOB-USP/Bauru. Mestre em Ortodontia pela
FOB-USP/Bauru.
Mr J
Rua Engenheiro Saint Martin, 22-23 Altos da Cidade
CEP: 17.043-080 – Bauru/SP
E-mail: jansonm@uol.com.br / www.mjanson.com.br
endeReço paRa coRRespondência
COnClusÕEs
Os desvios do plano rontal da maxila podem ser causados
por diversos atores. Assim que são identicados, o principal
papel do ortodontista é vericar se existe um componente es-
quelético grave (com deormidade acial) ou se o problema é
simplesmente dentoalveolar. É necessário estar atento, com
conhecimento proundo da estética do sorriso, para identicar
qual lado está errado e se o problema é causado pelo exces-
so ou deciência vertical unilateral. Deve-se, também, procurar
identicar os desvios camufados — que não cam evidentes no
sorriso, devido à irregularidade vertical dos dentes, mas apare-
cem com grande intensidade quando esses são nivelados.
Após o diagnóstico, o paciente, juntamente com o pro-
ssional, irá decidir se deseja a correção da ace como um
todo (tratamento ortodôntico-cirúrgico) ou se deseja corri-
gir somente o sorriso (tratamento ortodôntico compensató-
rio). Em ambos os casos é possível atingir bons resultados,
com a satisação do paciente.
Janson M
Rev Clín Ortod Dental Press. 2011 dez-2012 jan;10(6):12-7 17
Marcos Janson
• Especialista em Ortodontia pela FOB-USP/Bauru. Mestre em Ortodontia pela
FOB-USP/Bauru.
Marcos Janson
Rua Engenheiro Saint Martin, 22-23 Altos da Cidade
CEP: 17.043-080 – Bauru/SP
E-mail: jansonm@uol.com.br / www.mjanson.com.br
Endereço para correspondência
CONCLUSÕES
Os desvios do plano frontal da maxila podem ser causados
por diversos fatores. Assim que são identificados, o principal
papel do ortodontista é verificar se existe um componente es-
quelético grave (com deformidade facial) ou se o problema é
simplesmente dentoalveolar. É necessário estar atento, com
conhecimento profundo da estética do sorriso, para identificar
qual lado está errado e se o problema é causado pelo exces-
so ou deficiência vertical unilateral. Deve-se, também, procurar
identificar os desvios camuflados — que não ficam evidentes no
sorriso, devido à irregularidade vertical dos dentes, mas apare-
cem com grande intensidade quando esses são nivelados.
Após o diagnóstico, o paciente, juntamente com o pro-
fissional, irá decidir se deseja a correção da face como um
todo (tratamento ortodôntico-cirúrgico) ou se deseja corri-
gir somente o sorriso (tratamento ortodôntico compensató-
rio). Em ambos os casos é possível atingir bons resultados,
com a satisfação do paciente.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment