HTML пішімі
HTML — браузер талдап, терезе еніне қарай жайып шығатын тегтері бар мәтіндік файл. Онда қағаз парағы жоқ: беттер тек басып шығару сәтінде пайда болады, оларды автор емес, қозғалтқыш шешеді. Түрлендіргішіміз 10 МБ дейінгі .html және .htm қабылдайды, файлды headless Chromium-ға index.html атымен жібереді және оны 8,27 × 11,69 дюймдік A4-ке, төрт жағынан 0,4 дюйм жиекпен басады. Фондық түстер мен суреттер тасталмай, PDF-ке түседі.
Сандар туралы қысқаша
- Не қабылдаймыз
- .html және .htm, 10 МБ-тан аспайтын
- Немен басамыз
- headless Chromium, файл index.html атымен кетеді
- Парақ
- A4 8,27 × 11,69 дюйм, жиектері төрт жағынан 0,4 дюйм
- Фондар
- басылады: серверде printBackground қосулы тұр
- Қолтаңба тексеруі
- HTML үшін өшірулі — сенімді алғашқы байттар жоқ
- Өтініш жиілігі
- 10 минутта 10, кезек 5-тен асса — «бос емес» жауабы
HTML-де неге өз ені жоқ
Белгіленім «бұл тақырып», «бұл абзац», «бұл кесте» дейді, бірақ жолдың қанша сантиметр алатыны туралы үндемейді. Енін терезе береді, биіктігі қанша шықса, сонша. Сондықтан бір файл кең мониторда, телефонда және A4 парағында әртүрлі көрінеді — бұл ақау емес, пішімнің құрылысы.
Бет үзілістері тек басып шығарғанда пайда болады. Автор оны басып шығаруға арналған CSS ережелерімен меңзей алады, ал меңземесе, қозғалтқыш мазмұнды өзі бөледі: ұзын кесте парақтарға жайылады, тақырып беттің соңғы жолында қалуы мүмкін. Бізде де дәл солай болады, себебі басып шығаратын — сол Chromium.
Түрлендіргішіміз нақты не істейді
- Тек .html және .htm қабылдайды — өзге кеңейтімді файл конвейерге жеткенге дейін қайтарылады.
- Шегі 10 МБ, кеңселік маршруттардан екі жарым есе төмен: осындай салмақтағы HTML — суреттері іштей тігілген құжат.
- Файл Gotenberg-ке сіздегі атына қарамай index.html атымен жіберіледі.
- Парақ — кітаптық бағдардағы A4, жиектері 0,4 дюймнен, яғни шамамен 10 мм, оларды интерфейстен өзгертуге болмайды.
- Фонды басу қосулы: кестелердің сұр төсемдері мен түрлі-түсті бас жолдары ағармай, PDF-ке түседі.
- HTML үшін алғашқы байттар бойынша тексеру жоқ — DOCX сияқты ZIP контейнерлерден өзгеше, бұл пішімнің сенімді қолтаңбасы жоқ.
- Жиілік шегі — он минутта он өтініш, ал кезекте бестен көп сұраныс тұрса, сервер оларды жинамай, «бос емес» деп жауап береді.
PDF-те суреттер мен қаріптер неге жоғалды
Сіз қалтаны емес, бір файлды жібересіз. HTML салыстырмалы жолмен сілтейтін нәрсенің бәрі — қасындағы сурет, бөлек стиль кестесі, @font-face ішіндегі жергілікті қаріп — серверде мүлдем жоқ. Chromium ресурсты таппай, бос орын қалдырады немесе қосалқы қаріп қояды.
Мұның екі шешімі бар. Не барлық сілтемелер HTTPS арқылы абсолютті мекенжайға ауыстырылады, сонда түрлендіргіштің браузері ресурсты өзі жүктеп алады. Не мазмұн файлдың өзіне тігіледі: стильдер style тегінің ішіне, суреттер base64 кодталған data: мекенжайына, қаріп те сонда. Екінші жол сенімдірек, себебі басу сәтінде бөгде сервердің қолжетімділігіне тәуелді емес.
Жұмыс тәртібі
- Бір файлдық құжат жинаңыз: стильдер ішке, суреттер не абсолютті HTTPS мекенжайымен, не base64 түрінде.
- Түрін алдын ала тексеріңіз — файлды браузерде ашып, басып шығаруды басыңыз: алдын ала қарау не көрсетсе, сол келеді.
- .html немесе .htm файлын түрлендіргішке жүктеп, жауапты күтіңіз; ұзын құжатта да бұл бірнеше секунд.
- Дайын PDF-те бет үзілісіндегі кестелерді қараңыз — беттеу күткеннен алшақтайтын бірінші орын осы.
- Әрі қарай құжат кәдімгі: оны сығымдауға, беттерін нөмірлеуге, басқа файлдармен біріктіруге болады.
Жиі қойылатын сұрақтар
Файлдың орнына сайтқа сілтеме беруге бола ма?
Жоқ, түрлендіргіш тек жүктелген файлды қабылдайды. Бетті браузерде сақтау пернелер тіркесімімен сақтап, «веб-бет, толығымен» нұсқасын таңдаңыз да, шыққан .html файлын жүктеңіз.
Браузерде суреттер көрініп тұрса, PDF-ке неге түспеді?
Браузерде файл өз ресурс қалтасының қасында жатты, ал серверге тек өзі кетті. Ондағы салыстырмалы жолдар бос жерге апарады, сондықтан сілтемелерді абсолютті мекенжайға ауыстырыңыз немесе суреттерді белгіленімге тігіңіз.
PDF-тегі беттеу экрандағыдан неге тар?
Парақтың ені тұрақты: A4-тен әр жағынан 0,4 дюйм жиек шегеріледі. Мониторда мың жарым нүкте алған нәрсе осы енге қысылады, ал ені қатаң берілген блоктар шетінен шығып кетуі мүмкін.
Бөгде файлды .html деп қайта атасақ не болады?
Кеңейтім тексеруі оны өткізеді, себебі HTML мазмұны алғашқы байттармен танылмайды. Chromium тапқанын сызады: мәтіндік файлдан бастапқы кодтың беті шығады, екілік файлдан — оқылмайтын таңбалар жиыны.