Crystal Reports обрезает текст в PDF

Я нашел этот пост в Crystal Reports, обрезающий текст в PDF, но это не решило мою проблему.

У меня есть Crystal Report, который содержит поле в текстовом объекте (для управления межстрочным интервалом) и выбрано «может расти». Когда я экспортирую Crystal Report в PDF, есть случаи, когда текст обрезается.

введите описание изображения здесь

В этом примере текст обрезается с правой стороны, но в некоторых случаях, когда текст состоит из многих строк, нижняя часть последней строки будет частично обрезана.

Я использую Crystal Reports, входящий в состав Visual Studio 2008. В текстовой области установлен флажок «может расти», установлен шрифт Helvetica LT Condensed, жирный 14, а междустрочный интервал установлен в 0,75 раза больше обычного.

У кого-нибудь есть мысли о том, как я могу это исправить?


person Rene Meulenbroek    schedule 05.03.2010    source источник


Ответы (10)


Я тоже столкнулся с этим - Кристалл, кажется, немного смущен тем, где находятся границы текстового поля. Я предлагаю добавить небольшой отступ справа в текстовое поле (щелкните правой кнопкой мыши текстовое поле, выберите «Форматировать объект», выберите вкладку «Абзац» и введите небольшие числа (может быть, 0,2 или около того) в текстовое поле справа. Это должно помочь с правильным полем.

Что касается нижней границы, то здесь нет поля, которое можно было бы добавить. Можете ли вы добавить разрыв строки в конец текста, поскольку он исходит из базы данных? Или вы можете попробовать поле формулы, чтобы добавить разрыв строки:

{table_name.field_name} + chr(13) + chr(10)
person Ray    schedule 05.03.2010
comment
Добавление 0,2 см к отступу правого абзаца решило мою проблему. - person zendar; 16.11.2012
comment
Спасибо, это тоже решило мою проблему - person Nick; 08.03.2014
comment
Мне нужно было настроить ширину текстового поля в сочетании с правильным отступом, чтобы получить правильный результат. - person Matthieu; 08.01.2016

Думаю, я обнаружил проблему. Ширина ограничивающего подотчета была меньше ширины объекта поля. Регулировка его ширины исправила усечение, происходящее с правой стороны.

С другой стороны, текст, обрезанный внизу, кажется результатом слишком маленькой настройки межстрочного интервала. если вы установите межстрочный интервал, кратный исходному размеру текста в пунктах, и сделаете его слишком маленьким, нижняя часть строки будет обрезана. Я изменил это значение на «точное» и ввел определенный размер точки (например, междустрочный интервал 18 пунктов для моего текста размером 16 пунктов), и это, похоже, решило проблему. Если междустрочный интервал слишком мал, кажется, что Кристалл маскирует нижнюю часть текста.

person Rene Meulenbroek    schedule 12.03.2010

  • Щелкните правой кнопкой мыши текстовое поле
  • Выберите вкладку Common
  • В разделе «Выравнивание по горизонтали» я изменил его на «По ширине».

Благодаря этому текст был правильно растянут и не обрезан преждевременно при использовании Can Grow.

person ichauvin    schedule 05.08.2010

Я попробовал это, и это решило эту проблему.

Попробуйте сделать следующее:

Текстовый объект> Щелкните правой кнопкой мыши> Формат текста> Вкладка «Граница»

Измените стиль линии: Right / Left / Top / Bottom как одиночный и измените цвет на белый.

person Nas    schedule 02.11.2012

У меня возникла эта проблема при обновлении хранимой процедуры. Я изменил поле описания, которое я вставлял в отчет, с VARCHAR (100) на VARCHAR (150), встроенное с запрошенным изменением. В отчете Crystal в режиме предварительного просмотра было сохранено старое ограничение в 100 символов, и метка усекалась. Это было исправлено, когда я снова проверил базу данных.

Вкладка «База данных» -> «Проверить базу данных»

person Donovan Thomson    schedule 05.11.2013

Я тоже это обнаружил. Произошло только в представлении HTML. Я сделал несколько вещей, которые для трех блоков мне нужно было сделать по-разному, и попробовал множество сценариев, чтобы выбрать лучший. - Отформатируйте текст слева направо по ширине - Захватите правый край текстового поля и поставьте галочку с правого поля - Переключил шрифт с Times New Roman на другой (wierd) - Экспорт из BI LP как CR RPT и экспортировано из клиента CR 2013 в PDF - Изменить размер шрифта - У нас была средняя линия «и / или», и мы изменили ее на «и / или»

Мы выбрали выравнивание по ширине, так как оно было близко к полной линии и не отличалось от оригинала.

Множество причудливых обходных путей, которые исправили это. Для меня это указывает на сбой при обновлении системы в отчете.

Надеюсь, то, что я нашел, поможет другим.

person Jayson    schedule 28.08.2014

Если вы перепробовали все методы и все еще не работает, вы можете попробовать следующее:

     Local StringVar inString := 'Your text string here.......';

     Local NumberVar strLen := Length (inString);
     Local StringVar result := "";
     Local NumberVar maxLen := 45;    // adjust the length of text per line
     Local NumberVar idx := 0;
     Local NumberVar proceed := 0;

     While strLen > maxLen Do
     (
      proceed := 1;
      idx := maxLen;
      While (mid(inString,idx,1) <> " "  and idx > 1) Do
      (
       idx := idx -1;
       );
      if (idx = 1) then 
             result := result + mid(inString,1,maxlen) + chr(10)
      else
         (
             result := result + mid(inString, 1, idx-1)+ chr(10);
             strLen := strLen-idx;
             inString := mid(inString, idx+1, strLen)
         )
      );

     if proceed = 1 then
      (
        result := result + inString
       )
      else
       (
       result := inString
     );
  result
person ShawnYin    schedule 11.12.2015

В одной среде с Crystal Reports нам помогло установить ключ реестра: ForceLargerFonts = 0

Как найти?

Для 64-разрядной версии MS Windows:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ SAP BusinessObjects \ Suite XI 4.0 \ Crystal Reports \ Export \ PDF

Для 32-разрядной версии MS Windows:
HKEY_LOCAL_MACHINE \ SOFTWARE \ SAP BusinessObjects \ Suite XI 4.0 \ Crystal Reports \ Export \ PDF

См. Также следующее решение на странице https://apps.support.sap.com/sap/support/knowledge/public/en/0001835763.

person Samhambra    schedule 04.10.2017

Это сложная проблема, которую вам придется атаковать с трех разных направлений:

  1. Исправление программного обеспечения
  2. Принтер по умолчанию
  3. Создание форм

Оперативное исправление программного обеспечения: вам необходимо загрузить CRRuntime, которое включает исправление 20. Это оперативное исправление устраняет проблемы с усечением при создании PDF-файла. Вы можете найти его на странице http://downloads.businessobjects.com/akdlm/crnetruntime/clickonce/CRRuntime_64bit_13_0_20.msi

Принтер по умолчанию. Принтер, который вы используете при создании отчета, должен соответствовать принтеру, на котором вы его визуализируете. На наших серверах не установлены принтеры, кроме Microsoft XPS Document Writer. Обязательно выберите этот принтер в качестве принтера по умолчанию при написании отчета.

Создание форм: когда вы добавляете поле базы данных в свой отчет, не перетаскивайте его из проводника полей в область конструктора. Сначала вставьте текстовый объект в область конструктора. После того, как вы разместили текстовый объект и изменили его размер, перетащите поле базы данных на текстовый объект. Вы увидите, что имя элемента базы данных в фигурных скобках появится в текстовом объекте. По какой-то причине поле базы данных будет лучше обтекаться, если оно заключено в текстовый объект.

person rmcmullan    schedule 11.01.2018

Это заставило меня буквально нервничать на всю ночь !! Для меня сработало следующее: если вы используете отчеты Crystal с набором данных (связанным с набором данных), скорее всего, вы изменили длину поля в базе данных. поэтому, если длина была 10, и вы, например, настраиваете до 20, независимо от того, что вы делаете, отчет читает Старый набор данных с полем длиной 10 символов и усекает его до 10 (я не знаю, почему он это сделал) ... хотите верьте, хотите нет, я просто скопировал запрос из моего старого набора данных, создал новый набор данных и ВОЙЛА !!! это работало как шарм ...

person Paul    schedule 26.05.2021