标签: stroke

如何在 SwiftUI 中制作文本笔划?

我正在尝试在 SwiftUI 中进行文本笔画或在我的文本上添加边框,而不是在Text()项目中的字母中。

是否可以?

我想用边框制作这种效果: 影响

text border outline stroke swiftui

13
推荐指数
5
解决办法
5751
查看次数

AffineTransform没有改变中风?

当使用scale()具有两个不同参数的Graphics2D 函数(在x和y方向上按不同比例缩放)时,稍后在此Graphics2D对象上绘制的所有内容也会缩放.这具有奇怪的效果,即在一个方向上绘制的线比在另一个方向上绘制的线更粗.以下程序产生此效果,它显示以下窗口:

示例截图

public class StrokeExample extends JPanel {


    public void paintComponent(Graphics context) {
        super.paintComponent(context);
        Graphics2D g = (Graphics2D)context.create();
        g.setStroke(new BasicStroke(0.2f));

        int height = getHeight();
        int width = getWidth();

        g.scale(width/7.0, height/4.0);

        g.setColor(Color.BLACK);
        g.draw(new Rectangle( 2, 1, 4, 2));
    }

    public static void main(String[] params) {
        EventQueue.invokeLater(new Runnable(){public void run() {

            StrokeExample example = new StrokeExample();

            JFrame f = new JFrame("StrokeExample");
            f.setSize(100, 300);
            f.getContentPane().setLayout(new BorderLayout());
            f.getContentPane().add(example);
            f.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
            f.setVisible(true);
        }});

    }

}
Run Code Online (Sandbox Code Playgroud)

我正在使用此坐标转换以避免必须手动将我的应用程序模型坐标(在此示例中为(2,1,2,4))转换为屏幕(或组件)像素坐标,但我不希望此笔画失真.换句话说,我希望所有线都具有相同的宽度,与当前的x和y尺度因子无关.

我知道是什么产生了这种效果(Stroke对象创建了一个在用户坐标中绘制的矩形的描边形状,然后被转换为屏幕坐标),但我不确定如何解决这个问题.

  • 我应该创建一个新的Stroke实现,它在X和Y方向上以不同的方式描绘Shapes(从而在这里消除失真)?(或者是否有人已经知道这样的实现?)
  • 我应该将我的形状转换为屏幕坐标和笔划吗?
  • 还有其他(更好的)想法吗?

java awt java-2d affinetransform stroke

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

在UIImage的非透明像素周围添加边框和阴影

我正在尝试在UIImage 的非透明像素周围添加笔触/边框和阴影.

目标是获得如下所示的内容:

带有白色边框和阴影的图片

我已经尝试了几件事,我仍在努力弄清楚如何实现这一目标.

一般来说,我试过:

  1. 向UIImageView添加阴影.(影子的作品,中风/边框是一个矩形,而不是在脸上描绘出非透明像素.此外,我希望将结果保存为一个UIImage(没有它只是显示上的UIImageView))

  2. 为UIImage添加阴影(慢,不知道如何在这里添加边框).

非常感谢帮助!谢谢!

border shadow uiimage stroke ios

12
推荐指数
1
解决办法
1314
查看次数

绘制具有特定像素宽度的线条

我想在画布上使用具有一定宽度(以像素为单位,或理想情况下为"dp")的线条显示X/Y数据.我已经尝试了Paint的setStrokeWidth(..)方法,这确实改变了线宽,但它不是我需要的.在我的例子中,我使用matrix.preScale(xScale,yScale)将我的画布缩放为"真实工程单位",因此X比例表示0到100,Y为0比1.Paint对象的setStrokeWidth()方法似乎设置笔划,使其遵循我的矩阵preScale()设置.换句话说,水平线绘制得非常薄,垂直线绘制得非常厚.

有没有办法配置Paint,这样无论绘制线的方向,其宽度都是一致的像素数?

我已经尝试定义一个Drawable,它是一个行,并从那里创建一个ShapeDrawable,然后将它应用到Paint但在运行时遇到一些讨厌的类转换错误.这让我觉得这是错误的做法.但也许我太早放弃了.

据我所知,有一些Android绘图/图表包可用,有些包含源代码,但我真的希望在这里了解平台,而不是使用第三方解决方案.

谢谢你的任何提示!丰富

android canvas paint stroke

10
推荐指数
1
解决办法
1万
查看次数

在UILabel子类中概述UILabel文本

我正在努力寻找一种方法来简单地为我的UILabel文本添加轮廓/笔触/轮廓.谈论围绕UILabel背景的文字字母的笔划.

我正在使用swift 3,我想直接将我的文本概述到我的子类中:UILabel.

我找到了多个答案,建议这样做:

let strokeTextAttributes = [
        NSStrokeColorAttributeName : UIColor.black,
        NSForegroundColorAttributeName : UIColor.white,
        NSStrokeWidthAttributeName : -4.0,
        NSFontAttributeName : UIFont.boldSystemFont(ofSize: 30)
    ]

    self.attributedText = NSMutableAttributedString(string: self.text!, attributes: strokeTextAttributes)
Run Code Online (Sandbox Code Playgroud)

但问题是它不起作用.我的文字仍然相同,没有大纲......

谁能在这帮助我?那将是一件好事:)

非常感谢.干杯伙计们.

outline uilabel stroke ios swift

10
推荐指数
3
解决办法
7682
查看次数

NSBezierPath圆角矩形有坏角

我有NSBezierPath一个圆角矩形,但它的角落看起来波涛汹涌,并且在全尺寸观看时显得比其余的笔划更亮.我的代码是:

 NSBezierPath *path = [NSBezierPath bezierPath];
    [path appendBezierPathWithRoundedRect:NSMakeRect(0, 0, [self bounds].size.width, [self bounds].size.height) xRadius:5 yRadius:5];

    NSGradient *fill = [[NSGradient alloc] initWithColorsAndLocations:[NSColor colorWithCalibratedRed:0.247 green:0.251 blue:0.267 alpha:0.6],0.0,[NSColor colorWithCalibratedRed:0.227 green:0.227 blue:0.239 alpha:0.6],0.5,[NSColor colorWithCalibratedRed:0.180 green:0.188 blue:0.196 alpha:0.6],0.5,[NSColor colorWithCalibratedRed:0.137 green:0.137 blue:0.157 alpha:0.6],1.0, nil];
    [fill drawInBezierPath:path angle:-90.0];

    [[NSColor lightGrayColor] set];
    [path stroke];
Run Code Online (Sandbox Code Playgroud)

下面是2个角落的图片(在小图片中不那么明显):

角落

任何人都知道是什么导致了这个?我只是错过了一些东西吗?

谢谢你的帮助

cocoa stroke nsbezierpath

9
推荐指数
1
解决办法
4570
查看次数

HTML5中填充笔划的透明度

我正在研究HTML5中的涂鸦应用程序,我想做一些桶功能.我们的想法是绘制一条路径,它将被关闭并填充所选颜色(笔划的颜色).它适用于纯色,但如果我想要一个透明的笔触和填充,我会遇到这个问题:http://imgur.com/0N3MW

发生的是填充完成直到笔划的中间(路径的实际采样点),因此在形状内部的行程大小的一半线是较暗的,因为它是填充和笔划的交点.

你看到了解决方法吗?

不幸的是,我现在无法发布到JSFiddle,因为它处于READ ONLY模式.但你应该能够看到我在谈论这个沙箱中的内容:http://bit.ly/AbaMLl (网站和图书馆与我正在使用的内容无关,它只是我发现的一个帆布沙箱)

欢迎任何想法/主角:)

html5 canvas opacity fill stroke

8
推荐指数
3
解决办法
4万
查看次数

OSMDroid PathOverlay

今天我很期待如何在OSMDroid中使用PathOverlay.

我找不到任何解释它是如何工作的.

我需要创建一个建议的路线(不像导航系统),只需要一个点开始,做一个"电路",然后返回起点.

就像这样(在谷歌地图中绘制):

电路

我在这里要问的是,正确的方法是什么,指定一个自定义路径,做我想要的转弯.

谢谢!

java android stroke osmdroid

8
推荐指数
2
解决办法
2万
查看次数

用填充的android虚线边框

我有一个RadioGroup RadioGroup中 我想添加一个带有一些填充的虚线笔划(boder?).

Radio Buton的背景是

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/navigation"/>
    <item >
        <shape>
            <solid android:color="#00000000"/>
            <stroke android:color="#ffffff"
                    android:dashGap="5dp"
                    android:dashWidth="5dp"/>
        </shape>
    </item>
</layer-list>
Run Code Online (Sandbox Code Playgroud)

第二项 - 我试图绘制虚线.

我究竟做错了什么?

android border stroke

8
推荐指数
2
解决办法
1万
查看次数

仅在内部或外部的描边 SVG 路径

考虑 2 个 html svg 路径,一个正方形(类inside)和一个outside具有相同高度的矩形(类)。当我应用时stroke-width: 10px,笔触会5px在内部和5px外部应用。小提琴

在此处输入图片说明

我如何只在里面或只在外面抚摸?

.inside { 
  stroke: #333;
  stroke-mode: inside;     // property does not exist
  stroke-width: 5px;
}

.outside {
   stroke: #333;
   stroke-mode: outside;   // property does not exist
   stroke-width: 5px;
}
Run Code Online (Sandbox Code Playgroud)

如果没有这样的属性,是否有解决方法来实现以下目标:

在此处输入图片说明

html css svg stroke

7
推荐指数
1
解决办法
3733
查看次数