Osadzanie czcionek w inkscape

20

Czy ktokolwiek wie, jaki jest obecny stan osadzania czcionek w pliku svg, który można odczytać w programie inkscape. Uważam, że brak osadzonych czcionek poważnie utrudnia przenośność plików svg, szczególnie jeśli wysyłasz plik do osoby, która nie ma dostępu administratora na swoim komputerze i nie może zainstalować czcionek.

Próbowałem postępować zgodnie z instrukcjami podanymi pod tym linkiem:

HOWTO: Osadzanie czcionki w dokumencie SVG Linux Inkscape

ale nie udało się go uruchomić, ten link sugeruje również, że jest to możliwe:

https://answers.launchpad.net/inkscape/+question/83618

Ja, szczerze mówiąc, staram się, aby działało to w systemie Windows, a nie w systemie Linux (nie mam teraz dostępu do maszyny z systemem Linux). Czy ktoś wie lub ma dostęp do rzeczywistego pliku SVG, w którym ta funkcja działa?

Douglas Kastle
źródło
Być może związane z tym pytaniem?
Paolo Gibellini,
Cześć, dzięki za to. Tak, wypróbowałem go przed opublikowaniem tutaj i nie udało mi się go uruchomić, ale nie mogę też znaleźć działającego przykładu, tylko sugestie co może zadziałać.
Douglas Kastle,
W przykładach czcionki są osadzone do użytku przez przeglądarkę internetową (np. Grafika na stronie internetowej). Twój cel jest nieco inny i w tej chwili nie znalazłem żadnych powiązanych przykładów roboczych.
Paolo Gibellini,
1
Pamiętaj, że chociaż stackeschange doskonale nadaje się do pytań o istniejące funkcje oprogramowania, w przypadku projektów Open Source, takich jak Inkscape, podczas zadawania pytań na temat map drogowych i przyszłych funkcji takich jak ten, możliwy jest bezpośredni kanał z programistami. W przypadku inkscape proponuję zadać pytanie na kanale „#inkscape” w sieci IRC FreeNode.
jsbueno,
Podniosłem w tym celu pytanie na InkscapeForum, ale liczba odpowiedzi w odpowiedzi była mniejsza niż tutaj, przyjrzę się zaproponowanej przez ciebie trasie.
Douglas Kastle,

Odpowiedzi:

5

W obecnej wersji Inkscape wydaje się, że nie można jeszcze osadzać czcionek SVG (patrz także tutaj mały przykład ).

W informacjach o wersji 0.48 :

Znane jest ograniczenie, w którym lista glifów w oknie dialogowym nie jest jeszcze renderowana w wybranej czcionce, ale nadal w czcionce systemowej

W informacjach o wersji 0.47 znajduje się bardziej szczegółowe wyjaśnienie ograniczeń:

Jako projekt SoC 2008, JucaBlues zaimplementował wstępne parsowanie i renderowanie czcionek SVG. Możesz projektować czcionki w Inkscape, ale używanie ich do renderowania tekstu na płótnie nie jest jeszcze obsługiwane. Czekamy, aż libpango wdroży odpowiednią obsługę funkcji czcionek użytkownika.

Renderowanie czcionek SVG nie jest obsługiwane przez Firefox ani Internet Explorer, a Wiki Inkscape mówi nam, że:

SVG2.0 może zastąpić czcionki SVG przez WOFF

(poczekajmy i zobaczmy)


W tej chwili po tym samouczku udało mi się osadzić czcionkę WOFF w SVG:

<svg xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink"
     width="100%" height="100%" viewBox="30 40 340 135">

  <title>WebFont Template for SVG</title>

  <style type="text/css"><![CDATA[
    @font-face {
        font-family: "indie_flower";
        src: url("indie_flower.woff") format("woff");
        font-weight: normal;
        font-style: normal;
    }

    text { 
        font-family: "indie_flower", serif;
        font-size: 40px;
        fill: silver;
        stroke: gray;
        stroke-width: 0.5px;
        text-anchor: middle;
    }

    textPath { 
        font-size: 35px;
        text-anchor: start;
        fill: silver;
        stroke: none;       
    }

  ]]></style>

  <text x="200" y="80">http://schepers.cc/svg-webfonts</text>  

  <path id="curve" d="M75,170 C150,140 200,140 250,160" fill="none"/>
  <text><textPath xlink:href="#curve">Google Indie Flower</textPath></text>

</svg>

Czcionka została skopiowana lokalnie po tym adresie URL (pobierz stąd ) i uzyskaniu linku do pobrania (wygodnie zmieniając nazwę na „indie_flower.woff”).

Plik SVG używa lokalnej czcionki i dobrze się renderuje (przetestowano w Firefox 34, Chrome 39 i Internet Explorer 11 w systemie Windows 8.1). Używając lokalnej czcionki Nie mogę połączyć pliku SVG, musisz zadowolić się zrzutem ekranu:

Zrzut ekranu Chrome

Niestety (patrz wyżej), Inkscape w tej chwili nie jest w stanie go wyrenderować i użyć domyślnej czcionki.

W tej chwili ... poczekajmy i zobaczmy.

Paolo Gibellini
źródło
11

Możesz utworzyć przenośny plik SVG, konwertując tekst na ścieżkę wektorową.

Wybierz obiekt tekstowy, a następnie przejdź do menu ŚcieżkaObiekt do ścieżki . (W zależności od tego, co chcesz zrobić, możesz także użyć opcji Obrysuj ścieżkę).

Oczywiście jako wektor tekst nie będzie już edytowalny jak tekst, ale może to nie mieć tak dużego znaczenia, jak możliwość wyświetlania pliku SVG na drugim końcu.

hackerb9
źródło
2
to tak naprawdę nie odpowiada na pytanie, które polega na osadzaniu czcionek w pliku SVG, dzięki czemu jest ono edytowalne
Luciano
4
To może nie być poprawna odpowiedź na pytanie, ale z pewnością działa jak urok bez konieczności robienia wiele. To naprawdę dobra odpowiedź, jeśli mnie o to poprosisz!
Alexis Wilke
1
Zgadzam się, to bardzo przydatna odpowiedź. Często istnieje kilka sposobów robienia rzeczy. Jeśli odradzasz wszystkie odpowiedzi, które nie wykorzystują dokładnie tego, czego żąda osoba zadająca pytanie, nie czyni StackExchange bardzo przydatnym i przyjaznym dla nauki miejscem, IMHO.
Sybille Peters