Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 打印时NSTextView限制页面宽度_Macos_Cocoa_Nstextview_Text Rendering - Fatal编程技术网

Macos 打印时NSTextView限制页面宽度

Macos 打印时NSTextView限制页面宽度,macos,cocoa,nstextview,text-rendering,Macos,Cocoa,Nstextview,Text Rendering,我在理解如何获取NSTextView以限制显示和打印时的页面宽度时遇到问题。本质上,我希望实现的是,一旦包含文本视图的窗口的大小调整到某个点之后,文本视图将“包装”其内容。TextEdit.app基本上实现了我希望实现的目标: 然而,在我的应用程序中,我根本不了解这种行为,尤其是与嵌入文本视图中的图像相关的行为。例如,当我嵌入一个大图像时,如果窗口太小,图像将被简单地切断,但当窗口大小调整到足够大时,它将以全尺寸呈现,但文本视图不会将内容限制到页面的宽度: 当然,这会在打印时产生一些奇怪的

我在理解如何获取
NSTextView
以限制显示和打印时的页面宽度时遇到问题。本质上,我希望实现的是,一旦包含文本视图的窗口的大小调整到某个点之后,文本视图将“包装”其内容。TextEdit.app基本上实现了我希望实现的目标:

然而,在我的应用程序中,我根本不了解这种行为,尤其是与嵌入文本视图中的图像相关的行为。例如,当我嵌入一个大图像时,如果窗口太小,图像将被简单地切断,但当窗口大小调整到足够大时,它将以全尺寸呈现,但文本视图不会将内容限制到页面的宽度:

当然,这会在打印时产生一些奇怪的结果,例如,图像被简单地切断:

当调整窗口大小时,很明显(对于居中、右对齐或对齐的文本),文本视图没有将其宽度限制在一定的厘米数,如标尺所示

打印时如何限制
NSTextView
的宽度?我不关心页边距或在UI中将其呈现为多个页面(尽管我不介意),但我希望根据页面设置面板中设置的大小,确保打印时文本视图的内容不超过页面的宽度。(为了澄清:用户界面可以有任意宽度的文本视图,我只要求在打印时,它水平适合页面,因此没有任何内容被截断。)


我查阅了整个文档,并尝试了几件事,例如
NSText
maxSize
值,但都没有用。

我通过查看苹果如何使用TextEdit来解决这个问题,因为它的
PrintingTextView.m
文件就是我所看到的,而且很容易集成到项目中