Construindo a biblioteca libgdiplus da fonte

2020-10-02

Ao usar as bibliotecas FastReport.NET (Core), FastReport Open Source e FastReport Mono no sistema operacional Linux, bem como ao salvar documentos como imagens ou arquivos PDF, existe a possibilidade de experimentar a exibição incorreta de textos Unicode na visualização do relatório.

Um dos problemas mais comuns é um erro de hifenização e, como resultado, espaçamento incorreto entre palavras. Por exemplo, ao usar o idioma tailandês no sistema operacional Windows, vemos o seguinte texto:

Exemplo

Ao executar o mesmo relatório no Linux Ubuntu, a seguinte linha é formatada incorretamente:

Exemplo

Também pode haver problemas com a quebra de linha. Vejamos outro exemplo com Thai no sistema operacional Windows:

Exemplo

O mesmo texto é exibido incorretamente no sistema operacional Linux Ubuntu:

Exemplo

Esses erros de exibição de texto podem ser observados em outros idiomas.

Felizmente, existe uma solução - auto-montagem da biblioteca lingdiplus a partir do código-fonte com o Pango.

Antes de começar, é altamente recomendável fazer uma cópia de backup dos arquivos /usr/lib/libgdiplus*.*, pois eles serão sobrescritos pelos novos no processo de construção da biblioteca. Nesse caso, você pode retornar o sistema ao seu estado original se o resultado desejado não tiver sido alcançado.

Na primeira etapa, precisamos instalar as dependências necessárias usando o comando:

$ sudo apt-get install libgif-dev autoconf libtool automake build-essential gettext libglib2.0-dev libcairo2-dev libtiff-dev libexif-dev libpango1.0-dev

Em seguida, precisamos fazer uma cópia da biblioteca libgdiplus necessária do repositório GitHub: 

$ git clone https://github.com/mono/libgdiplus.git

Depois disso, vá para a pasta libgdiplus e execute os comandos de construção:

$ ./autogen.sh --with-pango --prefix=/usr
$ make

Se a compilação foi bem-sucedida e não há erros, você pode instalar a biblioteca compilada:

$ sudo make install

Os arquivos substituirão os antigos na pasta / usr / lib.

Agora você pode executar o programa com relatórios e verificar se ele funciona corretamente.

Por exemplo, você pode ver como FastReport Mono funciona no Linux Ubuntu 18.04:

FastReport Mono

Todos os itens acima também são verdadeiros para aplicativos da Web que usam as estruturas .NET Core e Mono.

Desejo-lhe boa sorte e menos problemas com programas multiplataforma!

.NET .NET Mono Mono FastReport FastReport Linux Linux Core Core Open Source Open Source Libgdiplus Libgdiplus
04 de março de 2026

Visão geral o .NET 10: Novidades no C# 14, ASP.NET Core, WinForms e MAUI

A Microsoft lançou o. net 10 com suporte a longo prazo (LTS). O lançamento não trouxe uma revolução, mas sim uma série de melhorias direcionadas e maduras. Este artigo destaca os pontos-chave.
26 de novembro de 2024

Installing FastReport on .NET 8.0 and Creating a Simple Report

The purpose of this article is to explain step by step how to install FastReport on .NET 8.0 and how to create a simple report. Taking the reporting process from the beginning, it will show how to connect, design and view reports.
04 de outubro de 2023

How to generate a report from an ASP.NET Core application using FastReport.Core.Skia

We tell you how to generate a report on Windows and Linux using FastReport.Core.Skia and a private NuGet server.

© 1998-2026 Fast Reports Inc.