THotPDF.BuildLoadedPageSVG Method
Surenka savarankišką SVG dokumentą iš pasirinkto įkelto PDF puslapio
Deklaracija
function BuildLoadedPageSVG(PageIndex: Integer): AnsiString; overload;
function BuildLoadedPageSVG(PageIndex: Integer;
EmbedFonts: boolean): AnsiString; overload;
Unit
HPDFDoc
Parametrai
| Pavadinimas | Paskirtis |
|---|---|
PageIndex | Nuliu pagrįstas įkeltojo puslapio indeksas |
EmbedFonts | True writes the glyphs of embedded fonts into the SVG as outlines, so the page looks the same where those fonts are not installed. False, and the overload without this parameter, leaves text to the viewer's installed fonts |
Grąžinama reikšmė
Grąžina visą SVG dokumentą, o tuščią eilutę — kai puslapio eksportuoti negalima
Naudojimo pastabos
- Keliai, iškoduotasis tekstas, vaizdų XObject, įterptieji vaizdai ir rekursyvieji Form XObject išduodami per bendrąjį turinio įrenginio interpretatorių; Form XObject pradedamas su spalvomis, galiojančiomis vietoje, kur jis piešiamas
- Drobė dengia matomąją puslapio dalį — jo
/CropBox, apkarpytą jo/MediaBox(žr.GetLoadedPageVisibleBox) — pasuktą/Rotatereikšme; dėžės apatinis kairysis kampas sutampa su drobės kampu net tada, kai dėžė nesideda nuo koordinačių pradžios - Tekstas rašomas UTF-8, viena
xpozicija simboliui ir suxml:space="preserve", tad tarpai išlaikomi; ligūriniai glyphai išskleidžiami į visus juos atstojančius simbolius, o XML 1.0 neleidžiami kodai tampa U+FFFD - Teksto išdėstymas paklūsta pilnajai teksto matricai, įskaitant simbolių ir žodžių tarpus, horizontalųjį mastelį, pakilimą ir
TJpataisas; atvaizdavimo veiksenos 0–2 užpildo, brūkšnija arba abu, veiksena 3 nesupiešia nieko, o 4–7 veiksenomis rodomo teksto glyphai nuo teksto objekto pabaigos (ET) iki grafikos būsenos pabaigos tampa ir apkarpytimo keliu - Pagal numatymą tekstas naudoja įrengtinius šriftus: standartinės 14 šeimos ir jų TrueType atitikmenys sutelpa į Helvetica arba Arial, Times New Roman ir Courier New, kiti šriftai įvardijami pagal savo šeimą, taip pat su tarpais tarp jos žodžių (
MyriadPro, Myriad Pro), o po to seka bendroji šeima, imama iš šrifto aprašo vėliavėlių arba vardo. Pastorintas ir pasviras tekstasfont-weightirfont-stylegauna iš šrifto vardo stiliaus dalies (Arial-BoldMT,Helvetica-Oblique,MinionPro-It) ir iš šrifto aprašo svorio, vėliavėlių ir pasvirojo kampo - Nustačius
EmbedFontskaipTrue, PDF įmontuotą TrueType arba CFF programą turinčio šrifto tekstas piešiamas iš programos glyph kontūrų. Kiekvienas glyph vieną kartą apibrėžiamas kaip<path>viduje<defs>ir išdėstomas su<use>kiekvienoje jo atsiradimo vietoje, todėl kartojami simboliai nekartoją savo kontūrų; užpildymo ir brūkšniavimo veiksenos, linijų pločiai ir teksto apkarpytimas seka paskui tekstą, kaip ir SVG tekstui. Pats tekstas paliekamas kaip permatomas SVG tekstas virš kontūrų, todėl jį vis dar galima pažymėti, ieškoti ir skaityti pagalbinėmis technologijomis - Neįmontuoti šriftai, Type 1 šriftų programos (
/FontFile), vertikalusis CJK rašymas ir sekos su kodu, kuris įmontuotojoje programoje neturi glypho, lieka SVG tekstu net nustačiusEmbedFonts. Kontūrai padidina failą, dažnai du ar tris kartus teksto turtingiems puslapiams - Pildymo ir brūkšniavimo spalvos, nustatytos bet kurioje spalvų erdvėje (
DeviceGray,DeviceRGB,DeviceCMYK, ICCBased, kalibruotosiose, Lab, Indexed, Separation ir DeviceN), konvertuojamos į sRGB taip, kaip jas konvertuoja puslapio atvaizduotojas - Raštu užpildyti keliai užpildomi SVG
<pattern>, kasXStepirYStepkartojančiu rašto langelį, apkarpytu jo/BBox; bespalviai raštai langelį nudažo su raštu duota spalva. Šešėliavimo raštu užpildyti keliai gauna savo šešėliavimo gradientą arba tinklelį, apkarpytą keliu. Rašto matrica taikoma puslapio, arba raštą naudojančios formos, erdvėje. Brūkšniai su raštu naudoja jo spalvą, spalvotiems raštams — juodą - Type 2 ašiniai ir Type 3 spinduliniai šešėliavimai naudoja SVG gradientus su apribotomis imtomis stotelėmis; galas, kurio
Extendnepratęsia, lieka nedažytas, kaip ir PDF - Type 4–Type 7 tinklelio šešėliavimai naudoja apribotą permatomą PNG data URI su ne daugiau kaip 16 milijonų taškų
- Įterptieji vaizdai iškoduojami tuo pačiu įkelto dokumento vaizdų keliu ir įterpiami kaip PNG data URI
- Vaizdų kaukės, įterptąsias imamus, tampa einamąja pildymo spalva nudažytais PNG vaizdais, permatomais ten, kur nieko nepiešiama;
/SMaskir/Maskšablonai vaizdui suteikia alfa kanalą — kauzės raiška, kai ji tikslesnė už vaizdą. Spalvos rakto/Maskmasyvai Flate, LZW ir nefiltruotiems vaizdams atitinkamus pikselius padaro permatomais WirW*apkarpytimo keliai tampa SVG<clipPath>elementais, pasibaigiančiais tos grafikos būsenos, kurioje nustatyti, pabaigoje; Form XObject apkarpyti pagal savąjį/BBox, o ašiniai ir spinduliniai šešėliavimai — pagal savuosius- Type 3 šriftų tekstas piešiamas su šrifto glyph procedūromis, išdėstomomis per jo
/FontMatrix, vietoj SVG teksto; glyphai, pradedantysd1, piešiami einamąja pildymo spalva. Type 3 glyphai neprideda nieko prie 4–7 atvaizdavimo veiksenų apkarpytimo kelio - Šešėliavimo
Backgroundspalva užpildo šešėliavimo rašto plotą prieš pat šešėliavimą, todėl matosi ten, kur šešėliavimas nedažo; kaip PDF, jis nepaisomas, kai šešėliavimas piešiamas sush - Type 1 funkcijomis pagrįsti šešėliavimai imami per savo
Domainį PNG data URI su iki 256 į 256 imčių, išdėstomą per šešėliavimoMatrix; jį padidinus žiūrovė jį išlygina