小编Fre*_*edL的帖子

如何绘制子像素线

在下面的代码中,我试图绘制两条线:一条具有子像素宽度(0.5),另一条具有1px宽度:

        var img = new Bitmap(256, 256);
        Graphics graphics = Graphics.FromImage(img);
        graphics.SmoothingMode = SmoothingMode.AntiAlias;

        // Draw a subpixel line (0.5 width)
        graphics.DrawLine(new Pen(Color.Red, (float)0.5), 0, 100, 255, 110);

        // Draw a single pixel line (1 width)
        graphics.DrawLine(new Pen(Color.Red, (float)1), 0, 110, 255, 120);

        img.Save(@"c:\temp\test.png", ImageFormat.Png);

        graphics.Dispose();

        img.Dispose();
Run Code Online (Sandbox Code Playgroud)

但是,在生成的图像中,两条线显示相同的宽度:

在此输入图像描述

有没有办法让顶线出现亚像素(0.5px)?

编辑:经过一些研究,AGG可能是要走的路,其中有一个c#端口.

.net c# graphics system.drawing

12
推荐指数
2
解决办法
4180
查看次数

应用程序在模拟器中全屏启动,但不在设备上启动

这是一个Xcode 6 Swift项目.在模拟器中选择iPhone 5或5s时,应用程序将以全屏高度启动.但是,在实际设备(iPhone 5s)上运行应用程序时,屏幕的高度仅为iPhone 4(即屏幕顶部和底部出现黑条).

奇怪的是,我从另一个测试项目重新创建了这个项目 - 在原始项目中我没有遇到这个问题.

我已经在每个故事板xml文件上进行了文本比较,两者大多相同.我还看了每个的Build Settings,看不出任何明显的差异.最后,每个"Images.xcassets"目录中指定的json文件都是相同的.

iphone xcode storyboard

6
推荐指数
1
解决办法
4290
查看次数

c ++:如何从UTF-8代码点创建unsigned char

我正在使用C++库,需要从UTF-8代码点创建一个unsigned char.例如,如果代码点是十进制610('拉丁字母小资本G'),我将如何在C++中创建它?

我javascript,我可以做以下事情:

var temp = String.fromCharCode(610);
console.log(temp); // Outputs a small 'G' (correct)
var codePoint = temp.charCodeAt(0);
console.log(codePoint); // Outputs 610 (correct)
Run Code Online (Sandbox Code Playgroud)

在C++中尝试过:

unsigned char temp = (unsigned char)610;
// compiles, but
Debug::WriteLine((int)temp); // outputs 98 (??)
Run Code Online (Sandbox Code Playgroud)

请提供C++中的代码示例,其执行与上面的javascript示例相同.

环境是在托管C++中,但我想避免使用CLR类型,因为我正在与第三方库连接.

c++ unsigned utf-8 char

5
推荐指数
1
解决办法
1589
查看次数

标签 统计

.net ×1

c# ×1

c++ ×1

char ×1

graphics ×1

iphone ×1

storyboard ×1

system.drawing ×1

unsigned ×1

utf-8 ×1

xcode ×1