PerfectVector
Yazan Irene Kim8 dk okuma

LaTeX'te SVG: Şekilleri koruyun, etiketleri dizin

SVG çiziminiz için PDF veya PDF ve LaTeX iş akışını seçin. Etiketleri düzenlenebilir tutun, Inkscape bağımlılıklarını anlayın ve belgenin son PDF'sini kontrol edin.

Bu sayfada

LaTeX'te bir SVG çizimi kullanmak için etiketleri hangi aracın işleyeceğini seçin. Çizimin mevcut tipografisi uygunsa normal bir PDF dışa aktarın. Etiketleri belge metniyle birlikte LaTeX'in dizmesini istiyorsanız PDF ve LaTeX iş akışını kullanın.

svg paketi, Inkscape üzerinden dışa aktarımı otomatikleştirip ardından ortaya çıkan dosyaları belgeye ekleyebilir. Dönüştürmeyi ortadan kaldırmaz; bu adımı sizin için yönetir. CTAN'ın paket özeti, dışa aktarılan grafiklerle LaTeX tarafından işlenen metin arasındaki ayrımı açıklar.

Hazırlanmış bir çizimde asıl soru, şekillerin ve metinlerin bir sonraki revizyonda korunup korunmayacağıdır. Ana SVG dosyasını saklayın, etiketleri nasıl ele alacağınıza karar verin ve birleştirilmiş belgeyi amaçlanan boyutunda kontrol edin. Belgeniz Python ile üretiliyorsa açık boyutlandırmayı ve bitmiş dosya kontrolünü de kapsayan SVG çizimlerini ReportLab PDF'lerine yerleştirme iş akışını izleyin.

Belgenizin kullanacağı dosyaları seçin

İhtiyacınızTeslim yöntemiGüncel tutacağınız dosyalar veya ortam
Çizimin mevcut görünümünü korumakNormal bir PDF dışa aktarın ve graphicx kullanınAna SVG dosyası ve dışa aktarılmış PDF
Şekil etiketlerini LaTeX'in dizmesini sağlamakPDF ve LaTeX olarak dışa aktarınAna SVG dosyası ve eşleşen PDF/LaTeX çifti
Belge derlenirken dışa aktarımları yenilemekInkscape ile svg paketini kullanınSVG kaynağı ve derleme ortamı

Örneğin bir kartın yanındaki merceği gösteren küçük bir çizim düşünün. İki etiketi yalnızca “Lens” (mercek) ve “Card” (kart). Bu örnekte boyutlar, ölçülmüş ışınlar veya grafiğe dökülmüş sonuçlar yok.

İncelemeyi yapan kişi, “Card” (kart) ifadesini “Target card” (hedef kart) olarak değiştirmenizi istiyor. Çizimi yeniden yapmanız gerekmez, ancak uzayan etiket için yer gerekir. Bu, yararlı bir revizyon testidir: harflerin şekillerini çizerek çıkarmadan sözcükleri değiştirebiliyor musunuz ve yeni etiket hâlâ sığıyor mu?

Grafikler ve metin etiketleri olarak ayrılan, ardından etiketli tek bir şekil halinde birleştirilen mercek ve kart çizimi
PDF ve LaTeX ayrımını gösteren illüstrasyon: çizim geometrisi ve etiket metni, birleştirilmiş tek bir şekle verilen ayrı girdilerdir. Dizgiden sonra etiketlerin yerleşimini yine de kontrol etmek gerekir.

Yöntem 1: normal bir PDF dışa aktarın

Etiketler zaten doğru görünüyorsa ve belgenin tipografisini devralmaları gerekmiyorsa bu yöntemi kullanın.

Inkscape'in PDF dışa aktarma rehberi, File → Save a Copy komutunu, PDF seçimini ve metin çıktı seçeneklerinin belirlenmesini anlatır. Özgün SVG'yi saklayın. Normal, aranabilir metin için yazı tipi gömmeyi değerlendirin; harfleri yollara dönüştürmek şekillerini sabitler, ancak düzenlenebilir metin olma özelliklerini ortadan kaldırır.

Bu örneği ana .tex dosyasının yanına lens-card.pdf adıyla kaydedin. PDF üreten bir LaTeX projesinde temel ekleme biçimi şöyledir:

\documentclass{article}
\usepackage{graphicx}
\begin{document}
\includegraphics[width=0.7\linewidth]{lens-card.pdf}
\end{document}

graphicx paketi ve \includegraphics, Overleaf'in görsel rehberinde belgelenen görsel ekleme yöntemidir. Buradaki genişlik, zorunlu bir şekil boyutu değil, bir yerleşim örneğidir.

Dışa aktarılan PDF'yi belgeye eklemeden önce açın. Her iki nesnenin ve etiketlerin mevcut olduğunu doğrulayın. Derlemeden sonra şekli tekrar inceleyin: tam sayfalık bir çizimde okunabilen etiket, dar bir sütunda fazla küçük kalabilir.

SVG'deki etiketi değiştirirseniz PDF'yi tekrar dışa aktarın. Belgenin eski bir teslim kopyasını kullanmaya devam etmemesi için dosya adlarını açık ve karışıklığa yol açmayacak şekilde belirleyin.

Yöntem 2: grafikleri ve LaTeX metnini birlikte dışa aktarın

Şekil etiketlerinin LaTeX tarafından dizilmesini istiyorsanız bu yöntemi kullanın. PDF ve LaTeX özeti, şekil metninin belge tipografisini kullanabilmesi için çizimle metnin ayrı işlendiğini açıklar.

Inkscape'in PDF dışa aktarma iletişim kutusunda, dışa aktarma rehberinde belirtildiği gibi Omit text in PDF and create LaTeX file seçeneğini seçin. Ortaya çıkan lens-card.pdf ve lens-card.pdf_tex dosyalarını birlikte tutun. PDF'yi tek başına açtığınızda çıkarılan etiketleri göremezsiniz.

svg paketinin kılavuzunun 2.5. bölümü, Inkscape tarafından önceden dışa aktarılmış dosyalar için \includeinkscape komutunu belgeler. Dosya çifti ana .tex dosyanızın yanındayken ekleme biçimi şöyledir:

\documentclass{article}
\usepackage{svg}
\begin{document}
\includeinkscape[width=0.7\linewidth]{lens-card.pdf_tex}
\end{document}

Bu yöntem, belge derlemesinden SVG'yi dışa aktarmasını istemek yerine hazırlanmış çifti kullanır. Projeyi taşırken iki dosyayı da koruyun.

Mercek ve kart örneğinde, birleştirilmiş etiketlerin konumlarını ana çizimle karşılaştırın. Daha geniş bir belge yazı tipi, dışa aktarılan geometri değişmese bile “Target card” ifadesini merceğe yaklaştırabilir. Etiketlerin çevresinde yeterli boşluk bırakın ve yerleşimi bitirmeden önce daha uzun bir ifadeyi test edin.

Harfler zaten yollara dönüştürülmüşse çizim geometrisinin bir parçasıdır. LaTeX'in etiketi dizmesini istiyorsanız amaçlanan etiketi düzenlenebilir ana dosyada gerçek metin olarak koruyun veya yeniden oluşturun. SVG yazı tipi rehberi, düzenlenebilir metinle yollara dönüştürülmüş harfleri nasıl ayırt edeceğinizi açıklar.

Yöntem 3: svg paketinin derleme sırasında dışa aktarmasını sağlayın

Çizimde sık sık düzenleme yapıyorsanız otomatik yöntem kullanışlı olabilir:

\documentclass{article}
\usepackage{svg}
\begin{document}
\includesvg[width=0.7\linewidth]{lens-card}
\end{document}

Burada kaynak lens-card.svg dosyasıdır. Paket kılavuzu, otomatik dışa aktarım için çalışan bir Inkscape yürütülebilir dosyası gerektirir ve onu çağırmak için shell escape kullanımını belgeler. Güvenilir bir yerel proje için belgelenen çağrı şöyledir:

pdflatex --shell-escape main.tex

Shell escape, dış komutların çalıştırılmasına izin verir; yalnızca güvenilir proje kaynaklarında kullanın. Ortamınız buna izin vermiyorsa dışa aktarımları derleme dışında hazırlayın ve önceki yöntemlerden birini kullanın.

Paketin inkscapelatex=true ayarı, metni LaTeX ile işlemek üzere ayırır ve varsayılan ayardır. Bunun yerine Inkscape'in dışa aktardığı metni istiyorsanız \includesvg üzerinde inkscapelatex=false ayarını kullanın. Etiket boyutlarını ayarlamadan önce bu davranışı bilinçli olarak seçin.

Bunlar belgelenmiş ekleme biçimleridir. Seçtiğiniz yöntemi uzun bir belgeye veya paylaşılan bir şablona uygulamadan önce kendi projenizin küçük bir kopyasında test edin.

Biçimi değiştirmeden önce eksik parçayı teşhis edin

Gördüğünüz durumÖnce kontrol edin
SVG var ancak üretilen PDF eksikDışa aktarımın çalışıp çalışmadığı, Inkscape'in kullanılabilirliği ve çıktı yolunun doğruluğu
Çizim görünüyor ancak etiketler yokPDF/LaTeX çiftinden yalnızca PDF'yi ekleyip eklemediğiniz
Etiketler üst üste biniyor veya boşlukları beklenmedik görünüyorSeçilen metin iş akışı, belgenin yazı tipi ve etiketler için ayrılan alan
PDF, metin işlenirken görülen türden hatalar üretiyorGörsel ekleme komutu yerine \input komutuna verilip verilmediği
Şekilde beklenmedik boşluk veya kırpılma varDışa aktarım alanı ve çizimin sayfa sınırları

Birden fazla ayarı aynı anda değiştirmeden önce ilk ilgili derleyici hatasını takip edin. Eksik dışa aktarım dosyası için diskteki o dosyayı inceleyin. Yanlış yerleşmiş etiket için birleştirilmiş şekli inceleyin. Bu kontroller iş akışının farklı kısımlarıyla ilgilidir.

Overleaf projesinde seçtiğiniz yöntemin gerektirdiği dosyaları yükleyin. Hazır bir PDF veya eşleşen dışa aktarım çifti, derleme sırasında SVG dışa aktarımı gereksinimini ortadan kaldırır. Yerel kurulumun, kendi sunucunuzun ve barındırılan projenin aynı dış araçlara sahip olduğunu varsaymayın.

Yalnızca kurtarılması gereken çizimi kurtarın

Düzenlenebilir bir SVG'niz zaten varsa onu kullanın. Kaynak sayısal bir grafikse şekli grafik verilerinden ve kaynak kodundan yeniden üretin. Denklemleri ve bilimsel etiketleri metin olarak koruyun; piksellerini vektörleştirmek anlamlarını geri getirmez. Python ile üretilmiş bir şekil için, belge dışa aktarımından önce ayrı bir logoyu yollar olarak korumak üzere Matplotlib grafiği ve SVG çizimini birleştirme iş akışını izleyin.

Vektörleştirme daha dar bir durumda yararlıdır: özgün çizim kayıptır ve basit bir açıklayıcı nesnenin yalnızca raster kopyası kalmıştır. Bir kopyayı çizimi kapsayacak şekilde kırpın; etiketleri ve verileri vektörleştirmenin dışında tutun. PerfectVector'ın bilimsel çizim vektörleştirme aracıyla çizimi vektör şekiller olarak önizleyin ve ince konturları, açık boşlukları ve istenmeyen arka plan bölgelerini inceleyin. SVG'yi indirin, özgün etiketleri düzenleyicinizde ayrı olarak ekleyin ve seçtiğiniz LaTeX teslim yöntemini kullanın.

Mercek ve kart örneğinde kurtarma işlemi, çizilmiş merceği veya kartın konturunu kapsar. Metin, etiket kaynağında tutulmalıdır. Bir vektör adayının PDF dışa aktarımı ve belgeye eklenmesinden sonra yine incelenmesi gerekir; bu aday ölçülmüş geometri veya yayın politikalarına uygunluk onayı sağlamaz.

Çizgi çizimi hazırlama rehberi, raster kaynağın temizlenmesini ele alır. Elde kalan tek dosya PDF ise PDF'den SVG'ye dönüştürme rehberi, herhangi bir şeyi vektörleştirmeden önce mevcut vektör içeriğini taranmış sayfadan ayırt etmenize yardımcı olur. Daha genel kaynak seçimi için görsel vektörleştirmenin neleri geri kazandırdığına bakın.

Birleştirilmiş belgeyi kontrol edin, ardından kaynaklarını saklayın

Yalnızca etiketin değiştirildiği revizyon testini bir kopyada yapın. “Card” ifadesini “Target card” olarak değiştirin, gerekiyorsa dışa aktarımı yenileyin ve belgeyi derleyin. Son şekil genişliğinde metnin yazımını ve yerleşimini kontrol edin. Ardından amaçlanan ifadeyi geri yükleyin.

Çizimin boşluklarını, ince çizgilerini ve dışa aktarım sınırlarını da inceleyin. Inkscape'in PDF dışa aktarma rehberi, filtre efektlerinin rasterleştirilebileceğini açıklar; dolayısıyla yalnızca PDF dosya adı, görünür her parçanın vektör geometrisi olduğunu kanıtlamaz.

Düzenlenebilir SVG'yi ve belgenin kullandığı dosyaları birlikte tutun. PDF/LaTeX çifti için iki dosyayı da teslim edin. Paylaşmayı planladığınız proje kopyasının aynısını tekrar açın ve şekil kontrolünü orada tekrarlayın.

Sık sorulan sorular

Bir SVG'yi doğrudan includegraphics içine koyabilir miyim? Buradaki iş akışlarında önce PDF gibi desteklenen bir grafik dosyasını dışa aktarın veya Inkscape dışa aktarımını yönetmek için svg paketini kullanın. Paket de sonuçta dışa aktarılmış grafikleri belgeye ekler.

Dışa aktardığım PDF'de neden etiket yok? PDF ve LaTeX dışa aktarımı, etiket metnini PDF'den çıkarır. Şekli birleştirmek için eşleşen LaTeX bileşenini ekleyin veya tek başına yeterli bir görsel dosyası istiyorsanız normal bir PDF dışa aktarın.

Her belge derlemesinde Inkscape'e ihtiyacım var mı? Otomatik SVG dışa aktarımı için derleme ortamında Inkscape gerekir. Önceden dışa aktarılmış bir PDF veya PDF/LaTeX çifti, derleme sırasında bu dışa aktarım çalıştırılmadan eklenebilir.

LaTeX için bir grafiğin ekran görüntüsünü vektörleştirmeli miyim? Sayısal grafikleri verilerinden ve grafik oluşturma kaynağından yeniden üretin. Vektörleştirmeyi, düzenlenebilir kaynağı kaybolmuş uygun açıklayıcı çizimler için kullanın ve etiketleri ayrı tutun.

Kaynaklar

  1. CTAN — SVG package — Otomatik Inkscape dışa aktarımı ve ayrı olarak LaTeX ile işlenen metin.
  2. Inkscape — Exporting a PDF File — PDF kopyaları, metin çıktı seçenekleri, filtre efektleri ve dışa aktarım alanı.
  3. Overleaf — LaTeX code for including images — graphicx paketi ve grafik ekleme komutları.
  4. CTAN — SVG and Inkscape workflow overview — Belge tipografisine yönelik PDF ve LaTeX yaklaşımı.
  5. Falk Hanisch and Philip Ilten — The svg package manual — Önceden dışa aktarılmış dosyaların eklenmesi, otomatik dışa aktarım gereksinimleri ve metin işleme seçenekleri.

Etiketlerin nasıl dizileceğini seçin, ardından belgenizde tamamlanmış bir şekli doğrulayın. Yalnızca raster çizim kaldıysa bir vektör çizim adayı hazırlayın, şekillerini inceleyin, etiketleri ayrı olarak geri ekleyin ve birleştirilmiş PDF'yi kontrol edin.

Bloga daha fazlası

Düzenlemesi daha kolay,
daha temiz bir SVG ile başlayın