草庐IT

external-graphic

全部标签

ios - objective-C : #define vs extern const

我知道以前有人问过这个问题,但我似乎无法在Apple的文档中找到有关它的信息;也许你们中的一些人做到了。许多Objective-C代码在.h文件中有跨文件常量,使用#define。其他人使用带有常量的.m方法,并在.h文件中extern它们。我理解优缺点的区别,但Apple是否说明在iOS开发中使用哪一个? 最佳答案 在extern上使用#defines的问题在于编译器不会进行任何类型检查。如果你#define一个字符串,没有什么可以阻止你在你真正想要的地方使用它,比如说,一个数字。如果您改用静态NSString,如果您尝试在不期望

ios - Core Graphics/iPhone如何绘制渐变弧线?

我会画圆弧我还找到了如何从here中绘制渐变线我发现有两个函数可以绘制渐变:CGContextDrawLinearGradient和CGContextDrawRadialGradient。但是如何绘制渐变弧线呢?我想像这张图那样实现: 最佳答案 我也花了很长时间寻找如何做到这一点,所以我想我会发布我最终的做法。事实证明,这两个答案都是对这个问题的极好答案:Drawsegmentsfromacircleordonut出于我的目的,我只使用了该答案的绘图和渐变部分。结构看起来或多或少是这样的……CGContextRefcontext=U

ios - 如何使用 Core Graphics 绘制点?

我在Quartz中看到用于绘制线条和圆圈的API。但我想要做的就是指定(x,y)笛卡尔坐标来为像素着色特定值。我该怎么做? 最佳答案 CGContextFillRect(context,CGRectMake(x,y,1,1)); 关于ios-如何使用CoreGraphics绘制点?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/313018/

ios - 带有 Core Graphic iPhone 的透明(alpha)渐变

有人知道如何使用CoreGraphic在图像上以编程方式创建透明渐变(alpha渐变)吗?我需要它来显示图像并保存它。我想获得的一个例子: 最佳答案 您可以使用QuartzCore将mask(具有渐变透明度)应用到UIImageView:UIImageView*myImageView=["theimageview"];CAGradientLayer*l=[CAGradientLayerlayer];l.frame=myImageView.bounds;l.colors=[NSArrayarrayWithObjects:(id)[[U

iphone - 为什么 UIBezierPath 比 Core Graphics 路径快?

我在研究绘制路径时发现,至少在某些情况下,UIBezierPath的性能优于我认为的CoreGraphics等价物。下面的-drawRect:方法创建了两条路径:一条UIBezierPath和一条CGPath。除了位置不同,路径完全相同,但抚摸CGPath的时间大约是抚摸UIBezierPath的两倍。-(void)drawRect:(CGRect)rect{CGContextRefctx=UIGraphicsGetCurrentContext();//Createthetwopaths,cgpathanduipath.CGMutablePathRefcgpath=CGPathCrea

iphone - drawRect 或不 drawRect(什么时候应该使用 drawRect/Core Graphics vs subviews/images,为什么?)

为了澄清这个问题的目的:我知道如何使用subview和使用drawRect创建复杂的View。我试图完全理解何时以及为什么使用一个而不是另一个。我也明白提前优化并在进行任何分析之前以更困难的方式做一些事情是没有意义的。考虑到我对这两种方法都很满意,现在真的想更深入地了解。我的很多困惑来自于学习如何使表格View滚动性能真正平滑和快速。当然这个方法的原始出处来自authorbehindtwitter适用于iPhone(以前的推特)。基本上它说要使表格滚动平滑,秘诀是不要使用subview,而是在一个自定义uiview中进行所有绘图。从本质上讲,使用大量subview似乎会减慢渲染速度,因

android - flutter : Create directory on external storage path - path provider getExternalStorageDirectory()

我正在创建一个flutter应用程序,我想在其中下载图像并将其存储到外部存储(而不是文档目录),以便任何照片库应用程序都可以查看它。我正在使用以下代码创建一个目录vardir=awaitgetExternalStorageDirectory();if(!Directory("${dir.path}/myapp").existsSync()){Directory("${dir.path}/myapp").createSync(recursive:true);}它给了我以下错误:FileSystemException:Creationfailed,path='/storage/emulat

graphics - 在相机小部件顶部显示 mask 区域

我正在尝试实现一个信用卡读卡器(使用一些API)。为了让用户拍摄卡片照片,我将全屏显示相机预览小部件。我想遮盖一个区域,以便用户将卡片居中放置。He'reanillustrationofwhatIhaveinmind我想知道如何在flutter中完成这种屏蔽?目前我只是在绘制一个BoxDecoration,但是缺少半透明的灰色区域。Container(width:MediaQuery.of(context).size.width*0.8,height:MediaQuery.of(context).size.width*0.8/1.55,decoration:newBoxDecorati

graphics - 如何为小部件边框/阴影添加 NEON 效果?

有没有什么方法可以使用flutter(带有特殊着色器或类似东西的CustomPaint)来创建这样的效果?例如。我有这个容器,我用CustomPainter在上面画了一些线。我可以像图片一样使用NEON效果绘制这些线条吗?Paint类有一个着色器属性,我认为我可以设置它来实现这个目标,但我不知道如何实现。Container(color:Colors.white,width:300,height:300,child:CustomPaint(painter:NeonPainter(),),),classNeonPainterextendsCustomPainter{PaintneonPai

android - 为什么我不能更改 Android 虚拟设备配置中的 "Emulated Performance: Graphics"设置?

我正在尝试使用AndroidStudio设置Flutter,并且我正在使用工具下的Android虚拟设备窗口设置虚拟设备。它在these中指定将EmulatedPerformance:Graphics设置更改为Hardware-GLES2.0的说明,但窗口不允许我将设置从Automatic更改。谁能解释一下我可以如何更改此设置?谢谢!截图: 最佳答案 在Pixel或Nexus5(x)等设备上运行的GooglePlay图片只能接受自动图形加速。因此,如果您不需要GooglePlay功能,则可以选择其他图片