2015-04-15 4 views
2

Я обнаружил, что цвет шрифта не работает слишком хорошо, независимо от того, синий, синий или голубой. Они все еще одного цвета.Невозможно изменить цвет шрифта

var FontArialRegularFilePath = @"C:\Windows\Fonts\Arial.ttf"; 
var fontArialRegular = pdfclownFonts::Font.Get(parmDocument, FontArialRegularFilePath); 
var file = new File(); 

var primitiveComposer = new PrimitiveComposer(new Page(file.Document)); 
{ 
    var blockComposer = new BlockComposer(primitiveComposer); 

    primitiveComposer.SetFont(fontArialRegular, 22 /*[Font-Size]*/); 
    primitiveComposer.SetFillColor(new DeviceRGBColor(double.Parse("0"), double.Parse("0"), double.Parse("49"))); //Dark Navy Blue... 

    blockComposer.Begin(new RectangleF(0f, 0f, 200f, 50f), XAlignmentEnum.Left, YAlignmentEnum.Top); 
    blockComposer.ShowText("Listing Price"); 
    blockComposer.End(); 
} 

ответ

3

ОП задает цвет, как это:

primitiveComposer.SetFillColor(new DeviceRGBColor(double.Parse("0"), double.Parse("0"), double.Parse("49"))); //Dark Navy Blue... 

Таким образом, он, кажется, предполагает, что цветовые компоненты приведены в диапазоне 0..255. Это не тот случай, но тип double используется по определенной причине: фактический диапазон равен 0..1.

Таким образом, ОП, скорее всего, хотел

primitiveComposer.SetFillColor(new DeviceRGBColor(0.0, 0.0, 49.0/255.0)); //Dark Navy Blue... 

Как ОП считается результирующий цвет, чтобы быть черным, здесь различные оттенки чистого синего, созданные с помощью new DeviceRGBColor(0.0, 0.0, Blue):

different shades of blue

Первоначально предлагаемое значение 49.0/255.0 составляет около 0,2, то есть очень темно-синий.

Я предполагаю, что OP знает, что для некоторых голубоватых цветов красных и зеленых значения не 0.

+0

Ну, он стал черным, когда я попробовал. Хммм. – fletchsod

+0

Это не черный, а очень синий. Я полагаю, вы также пытаетесь использовать разные значения для синих, не так ли? – mkl

+0

Нашли ошибку. Были обнаружены противоречивые диапазоны значений RGB, найденные в результате поиска Google. Цвет RGB для Navy Blue, который я, наконец, нашел RGB значение 35, 35, 142 вместо 0, 0, 49 RGB. Таким образом, с вашим ответом, это должен быть «новый DeviceRGBColor ((35.0/255.0), (35.0/255.0), (142.0/255.0)). Рад, что мы оба нашли решение этой проблемы. Я не понимаю, что исходный код PDFClown позволяет DeviceRGBColor с целыми параметрами. Ну что ж. – fletchsod

 Смежные вопросы

  • Нет связанных вопросов^_^