SE - generování PDF - není čeština #8
Labels
No Label
app-basic
app-ckan
app-crisiscleanup
app-cts
app-decidim
app-dhis2
app-frontlinesms
app-gnuhealth
app-kanboard
app-mifosx
app-motech
app-odoo
app-opendatakit
app-pandora
app-sahana
app-seeddms
app-sigmah
app-taarifa
app-ushahidi
critical
CZ
documentation
Doing
enhancement
GMaps
info
Mapbox
needinfo
new-app
OSM
performance
QGIS
regression
suggestion
To Do
upstream
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: Disassembler/Spotter-VM#8
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
kdekoliv se generuje PDF, je špatně čeština, místo znaků černé tečky
Steps to reproduce
Expected behaviour
české znaky
Observed behaviour
nejsou české znaky
Additional data (ticket URL, log, timestamp, stack trace etc.)
asi by stačilo přidat do definice nějaký unicode font,
tohle by stálo zato udělat jako issue, nebo pull request, týká se celé Sahany
Pozn.
úprava exportovaného PDF je celá odfláknutá.
když je příliš údajů ve výpisu, tak se strana dělí na více stránek a výpis je pak nečitelný.
Takže úkolem pro budoucího programátora bude ošetřit exporty dat do PDF (případně jiných datových formátů) a předělat exportní šablonu pro PDF aby tp mělo lepší úroveň ke svému účelu použití.
Vpodstatě si představuji úpravu tak, aby šla použít jak pro okamžité vytištění, tak pro nějakou dokumentaci, nebo jako přílohu projektu... tedy logo autora, Záhlaví s identifikací, datum exportu, úprava obsahu na šíři stránky, licence...
Nyní asi stačí ten font.
Report_2017-09-18_15-51-10.pdf
changed the description
added ~9 label
closed via commit
f3fd928977
Pull requestu netřeba. Existuje důkladně utajená konfigurační direktiva
settings.L10n.pdf_export_font
skrze kterou je možno font nastavit. Takže jsem Sahaně posunul jediný patkový font, který v základní instalaci Debianu existuje.Zbytek úprav bude na programátora, nicméně mám obavu, že Vaše představa bude nesplnitelná, protože generování PDF skrze pythonovské moduly je poměrně primitivní. To, co byste chtěl, by se nejspíše dalo řešit nějakým TeX preprocesorem, ale triviální to určitě nebude.
ok, díky,
... já myslim že to je řešitelné už se o tom víckrát diskutovalo
https://groups.google.com/d/msg/sahana-eden/O3dab_gD1W4/lnyYNbUlBwAJ
reopened
closed
V odkazované diskusi je přesně ten problém, na který narážím. Sahana renderuje PDF z HTML. Ale v HTML neexistuje nic jako konce stránek, záhlaví, zápatí atd. Takže se buď může vyladit každý pixel tak, aby z HTML lezly krásná PDFka pokud je použit přesně konkrétní řez a velikost písma, řádek má maximální počet znaků, stránka maximální počet řádků, nejsou v ní vložena žádná data s neznámou výškou atd. Anebo se použije systém, který řeší sazbu a data si umí přebrat po svém. Taky jsem za svých studijních let programoval PDF výstupy přes HTML, takže vím, co to obnáší. Ještě dneska bych si za to naliskal. Neříkám, že to není řešitelné. Říkám, že je to obtížné a tím pádem drahé :)
changed milestone to %2
trochu poladili formátování v PDF
a4858dc996
už ti kokoti zas změnili font, takže zas čeština neni.
to je furt dokola :(
Report_2019-03-26_13_08_25.pdf
reopened
closed via commit
13153d341b
Sice existuje konfigurační nastavení
settings.L10n.pdf_export_font
, které má nastavovat font v PDF, ale na spoustě míst je natvrdo nastavený název fontu na Helvetica. Takže workaround, který jsem teď commitnul je, že vezmeme font, který obsahuje české znaky, pojmenujeme jej jako Helvetica, ať už se původně jmenuje jakkoliv a explicitně jej nastavíme v konfiguraci. I přesto, že se Helvetica bere jako výchozí font, explicitní nastavení způsobí, že se námi dodané soubory skutečně načtou a nepoužije se místo toho ten podivný výchozí font, které má údajně má být Helvetica, ale které chybí diakritika.Otevřu na to issue, protože jsem si celkem jist, že to takhle fungovat nemá. Zároveň se ale bojím, že se tu vývoje nedočkáme, protože ta Helvetica je natvrdo nacpaná na vážně hodně místech. Uvidíme.
Otevřeno issue #1498 v upstreamu.
zareagoval rychle :D
Jo, tak tohle je přesně ten důvod proč mám ze Sahany deprese. Mají tam tři různé soubory, které dělají úplně to samé, v různých stádiích rozkladu. Něco refaktorují, ale starý kód tam nechají. Já se tu pak 4 hodiny hrabu v kódu plném duplicitních funkcí, introspekce a zpětných volání a když už nevím jak dál a vytvořím ticket, zjistím, že je oprava na jeden řádek na místě, kde by mě to vůbec nenapadlo.
Ten workaround tam stejně nechám, protože vyhledávání výrazu Helvetica v kódu serverové části Sahany najde 28 výskytů v 7 souborech a po tomhle extempore nemám nejmenší chuť zjišťovat, zda jsou skutečně použity nebo zda zas jen koukám na nějaký informační skanzen.
jasný, chápu. Příště jim prostě nejdřív vyjádřete chybu a položte dotaz jak a kdo to bude řešit. Mě by to taky naštvalo
tak jsem si myslel že už s češtinou v PDF nebudu obtěžovat, ale v Demo instanci se generování do PDF opět vyskytuje s podivnými znaky. viz příloha.
Report_2020-04-19_22_31_38.pdf
Zdá se, že situace je složitější:
v instanci Spotter to generování PDF někde funguje a dokonce s češtinou OK.
Ale na tabulce Organizace to místo PDF rovnou vytvoří ticket:
reopened
aha, tak v instanci Demo také při stlačení tlačítka PDF vznikají tickety, tento je z modulu Warehouse. Byl to výpis, kde nebyl žádný český znak a plno polí mělo pomlčky. Problém bych tedy šacoval na složitější a možná že souvisí s tím vyplňováním prázdných polí (?)
V Demo instanci je to očekávané, protože používá vše ve výchozím stavu, tudíž nezná češtinu a nemá definováno, že pro ni má v PDF použít jiný font. Nicméně jsem ve Franově zázračení v
1c48a9db37
objevil, že si Sahana umí sama stáhnout a použít Unifont, což jsem doteď nevěděl a ve Spotter instanci místo toho lámal přes koleno použití Helveticy, takže tohle ještě prozkoumám a příležitostně teda napatchuju i na Demo instanci.Chybám, které jste objevil a jejichž tracebacky napostoval, se budu věnovat pak. Je dost možné, že některá z těch čerstvých oprav problém již řeší. Bylo tam toho dost kolem překladatelského rozhraní a polštiny, která má taky všelijaká nabodeníčka.
ano, pozoruji, že někdo z Polska se pustil do boje s Covidem přes Sahanu. Právě na dodávky a objednávky by to v nějaké ideální inkarnaci asi mohlo pomoct. No, v tomto stavu jim držím palce, ať se jim podaří dosáhnout cíle.