Özelleştirilmiş yazı tipleri kullanarak filigranlar oluşturma

GroupDocs.Watermark, çeşitli formatlarda belgelerde filigranları yönetmek için güçlü bir kütüphanedir ve geniş bir özelleştirme yelpazesi sunar. Güçlü özellikleri arasında, geliştiricilerin filigranlarına benzersiz tipografi eklemelerine olanak tanıyan özel yazı tipleri kullanma yeteneği bulunmaktadır.

Bu makalede, sistemde yüklü olmayan özel fontların nasıl kullanılacağını keşfedeceğiz. Ayrıca, belirli fontların doğrudan konteyner ortamında yüklü olduğu test senaryoları için bir Linux Docker konteynerinin nasıl yapılandırılacağını göstereceğiz.

Neden Su İşaretleri İçin Özel Yazı Tipleri Kullanmalıyız?

Özel fontlar kullanarak filigranlar oluşturmanın birkaç avantajı vardır:

  1. Marka Kimliği: Belgelerinizin kuruluşunuzun tipografi yönergeleriyle uyumlu olmasını sağlayın.
  2. Sistem Bağımsızlığı: Sisteme kurulmuş fontlara bağımlılığı önleyin, farklı ortamlar arasında taşınabilirlik ve uyumluluk sağlayın.

GroupDocs.Watermark Özelleştirilmiş Yazı Tiplerini Nasıl Etkinleştirir?

GroupDocs.Watermark, özel yazı tiplerinin kullanılmasını basitleştirir ve geliştiricilerin yazı tipi dosyalarını içeren bir klasör belirtmesine olanak tanır. Ardından, istediğiniz yazı tipini ailesi adına göre referans verebilir ve bu da filigranlama sürecini esnek hale getirir ve iş akışınıza kolayca entegre edilmesini sağlar.

Uygulama üç ana adımı içerir:

  1. Yazı Tiplerini İçeren Klasörü Belirleyin: Yazı tipi dosyalarınızı (örneğin, .ttf, .otf) barındıran bir dizinin yolunu tanımlayın.
  2. Filigranın Fontunu Ayarlayın: Font sınıfını kullanarak fontu ailesi adı, klasör yolu ve boyut ile başlatın.
  3. Belgeye Filigran Ekleyin: Yapılandırılmış filigranı hedef belgenize uygulayın.

C#‘da Adım Adım Uygulama

İşte GroupDocs.Watermark ile filigran çözümünüzde özel yazıtiplerini nasıl kullanabileceğinize dair:

Ana Adımlar:

  • Belge ve çıktı dosyasının yolunu belirtin.
  • Özel yazı tipi dosyalarının bulunduğu klasör yolunu ayarlayın.
  • Font nesnesini aile adı ve özelliklerle başlatın.
  • Metin filigranı oluşturun ve özelliklerini yapılandırın.
  • Add the watermark to the document and save it.
using GroupDocs.Watermark;
using GroupDocs.Watermark.Options; 
using GroupDocs.Watermark.Watermarks; 

class Program
{
    static void Main()
    {
        string documentPath = "path-to-your-document.docx"; 
        string outputFileName = "path-to-output/document-with-watermark.docx"; 

        // Initialize the Watermarker
        using (Watermarker watermarker = new Watermarker(documentPath))
        {
            // Specify the folder containing custom font files
            string fontsFolder = "path-to-folder_with_fonts";

            // Initialize the font to be used for the watermark
            Font font = new Font("font_family_name", fontsFolder, 36, FontStyle.Bold); // Font family name, size and style

            // Create the watermark object
            TextWatermark watermark = new TextWatermark("Test watermark", font);

            // Set additional watermark properties
            watermark.ForegroundColor = Color.Blue; // Set the foreground color of the watermark
            watermark.Opacity = 0.4; // Set the opacity of the watermark
            watermark.HorizontalAlignment = HorizontalAlignment.Center; // Center horizontally
            watermark.VerticalAlignment = VerticalAlignment.Center; // Center vertically

            // Add the watermark to the document
            watermarker.Add(watermark);

            // Save the watermarked document
            watermarker.Save(outputFileName);
        }
    }
}

Testing GroupDocs.Watermark in a Linux Docker Container

When testing GroupDocs.Watermark in a Linux Docker container, you may encounter scenarios where you want to assume that specific fonts are installed in the system. This is particularly useful for verifying font-dependent functionality or for environments where font folder configuration is not feasible.

İşte gerekli bağımlılıkları ve özel yazı tiplerini yüklemek için bir Docker konteynerini nasıl yapılandıracağınız.

Dockerfile for Testing

Aşağıda, WebApp adlı bir .NET projesini bir Linux Docker konteynerinde çalıştırmak için örnek bir Dockerfile verilmiştir. Dosya ayrıca özel bir yazı tipinin (MyFont.ttf) ve GroupDocs.Watermark için gereken bağımlılıkların nasıl yükleneceğini göstermektedir:

# Use ASP.NET runtime as base image
FROM mcr.microsoft.com/dotnet/aspnet:6.0 AS base
WORKDIR /app
EXPOSE 80

# Add libgdiplus and libc6-dev for graphics support
RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

# Add `contrib` archive area to package sources list
RUN sed -i'.bak' 's/$/ contrib/' /etc/apt/sources.list

# Add default fonts
RUN apt-get update && apt-get install -y ttf-mscorefonts-installer fontconfig
RUN fc-cache -f -v # Refresh font cache

# Copy custom font to the font directory
COPY ["WebApp/MyFont.ttf", "/usr/share/fonts/truetype/"]
RUN fc-cache -f -v # Refresh font cache again

# Building the .NET application
FROM mcr.microsoft.com/dotnet/sdk:6.0 AS build
WORKDIR /src
COPY ["WebApp/WebApp.csproj", "WebApp/"]
RUN dotnet restore "WebApp/WebApp.csproj"
COPY . .
WORKDIR "/src/WebApp"
RUN dotnet build "WebApp.csproj" -c Release -o /app/build

# Publish the application
FROM build AS publish
RUN dotnet publish "WebApp.csproj" -c Release -o /app/publish /p:UseAppHost=false

# Final stage with ASP.NET runtime
FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .

# Set the entry point for the container
ENTRYPOINT ["dotnet", "WebApp.dll"]

Dockerfile’daki Ana Noktalar

Gerekli Kütüphanelerin Yüklenmesi:

RUN apt-get update && apt-get install -y apt-utils libgdiplus libc6-dev

Bu kütüphaneler, Linux’ta görsellerin doğru şekilde işlenmesi için gereklidir.

Varsayılan Yazı Tiplerini Kurma:

RUN apt-get update && apt-get install -y ttf-mscorefonts-installer fontconfig

RUN fc-cache -f -v

Bu adım, bir lisans ayarlamadan GroupDocs.Watermark kullanıyorsanız gerekli olan varsayılan fontları yükler.

Özel Bir Yazı Tipi Ekleme:

COPY ["WebApp/MyFont.ttf", "/usr/share/fonts/truetype/"]

RUN fc-cache -f -v

Bu komut özel fontu (MyFont.ttf) konteynırdaki uygun font dizinine kopyalar ve font önbelleğini günceller.

Uygulamayı Oluşturma ve Çalıştırma:

Kalan komutlar, Docker konteynerini .NET uygulamanızı (WebApp) oluşturmak ve çalıştırmak için yapılandırır ve özel fontun çalışma zamanı sırasında mevcut olmasını sağlar.

.csproj dosyasında Unix Desteğini Etkinleştirme

.NET 6 için Linux’taki System.Drawing.Common kütüphanesindeki sınırlamalar nedeniyle, .csproj dosyanıza belirli bir ayar ekleyerek Unix desteğini etkinleştirmeniz gerekiyor. Bu sınırlamalar hakkında daha fazla bilgi için Microsoft belgelerine başvurun.

<ItemGroup>
    <RuntimeHostConfigurationOption Include="System.Drawing.EnableUnixSupport" Value="true" />
</ItemGroup>

Bu ayar, System.Drawing işlevlerinin bir Linux ortamında doğru bir şekilde çalışmasını sağlar; bu, GroupDocs.Watermark kullanırken düzgün bir görüntüleme için gereklidir.

Özel Fontları Kullanmanın En İyi Uygulamaları

Bu özelliğin en iyi şekilde kullanılabilmesi için bu en iyi uygulamaları izleyin:

  1. Fontları Düzenleyin: Özel fontlarınızı kolayca erişim için belirli bir klasörde düzenli tutun.
  2. Yazı Tipi Adlarını Doğrulayın: Render sorunlarını önlemek için yazı tipi aile adını doğru bir şekilde belirttiğinizden emin olun.
  3. Test in a Containerized Environment: Use Docker konteynerleri uygulamanızı kontrollü, Linux tabanlı bir ortamda test etmek için.

Sonuç

GroupDocs.Watermark’te özel fontlar kullanma yeteneği, marka oluşturma ve stil gereksinimlerinizi karşılama konusunda su işareti tasarımınız üzerinde daha fazla kontrol sağlar. Bir font klasörü belirterek veya bir Linux konteynerine font yükleyerek, uygulamanızı herhangi bir ortamda sorunsuz bir şekilde test edebilir ve dağıtabilirsiniz.

Sağlanan Dockerfile ve C# örnekleri, bu işlevselliği uygulamak ve test etmek için kapsamlı bir rehber olarak hizmet etmektedir. Su işaretleme çözümünüzün esnek, taşınabilir ve üretime hazır olduğundan emin olmak için bunları deneyin.

Ücretsiz Deneme Alın

Ücretsiz olarak GroupDocs.Watermark API’lerini deneyebilirsiniz, sadece en son versiyonu release downloads website adresinden indirip yüklemeniz yeterli.

Geçici lisans alarak kütüphanenin tüm işlevlerini kısıtlamalar olmadan test edebilirsiniz. Geçici bir lisans başvurusu yapmak için geçici lisans sayfasına gidin.

See Also

Daha fazla bilgi ve ek kaynaklar için, aşağıdaki bağlantıların faydalı olabileceğini görebilirsiniz: