indesign出血问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了indesign出血问题相关的知识,希望对你有一定的参考价值。

不好意思阿akison这位朋友,上个问题本想追问的不小心点了满意回答,只好再开一个问明白了!非常感谢您,就是我没太明白,【防留白就做出血】是什么意思?如何【做出血】呢到底?我并不是把东西做到了【页面外出血线内】,而是做到了210*285的页面边缘,出血红框突在页面3mm外,这中间的3mm是没有东西的。该怎么处理呢?谢谢!!!

就是说你有些图片有些色块要拉大,使得页面外出血线内有内容,也就是说,你原本做得和文档大小一样的图片或者色块,这些要再拉大点,使得原本和文档边

缘齐平的地方,现在和出血线齐平。这样你做印刷稿的PDF时候,就会有出血的,这就是所谓的防留白,因为裁切的时候不可能正好切在你做的文档尺寸上,总会有偏差的,如果不做出血,一刀下去,有些时候,你会看到页面的旁边会有白边,就很看了

这种就是没出血的:

看到外面的出血线了伐?



这种是有出血的:


只要你的图片和色块是和文档边缘齐平的,就是做出血。你可以把相应的图片或者色块放大点,使得它们和出血线平就行了,不知道你明白伐?

追问

谢谢谢谢!!总算明白了!那如果我现在直接把背景图或色块拉大3MM对画质会有损失吗?不是矢量的。

追答

不会的,这个和你本身图片的质量有关,拉大3MM根本不影响画质的。如果是图片的话,记得是正比例拉大哦。

追问

哦好的谢谢您!

来自:求助得到的回答
参考技术A 要先理解出血是作什么的
出血,又叫留刀、加刀等
出血就是比你想要的作品尺寸大出一块来(一般是3mm),为什么呢?因为我们印刷或打印出作品以后,是要裁切整齐的,但如果你做的画面尺寸刚刚好是想要的尺寸,这时如果裁切时裁刀向外偏了一下,就会留下白边,为了避免这个问题,需要我们制作时,把画面向外延伸一块,这就是我们常说的出血了
InDesign建页面时默认会设定3mm的出血,如果画面需要到边,就要把画面扩展并覆盖这多出来的3mm部分,这就是做出出血来了
参考技术B 做东西的时候,如果是210*285的尺寸,加上出血的3mm,等于要做到216*291的尺寸,输出的时候尺寸也是216*291,另外ID文档尺寸和出血距离都是可以修改的,如果已经做好了,其实用PS的仿制图章工具拉出一个边也是可以的,如果是矢量图的话,直接按比例拉大拉到出血线上就可以了

如何阻止透明纹理上的OpenGL背景出血

【中文标题】如何阻止透明纹理上的OpenGL背景出血【英文标题】:How to stop OpenGL background bleed on transparent textures 【发布时间】:2013-03-09 18:14:16 【问题描述】:

我有一个 iOS OpenGL ES 2.0 3D 游戏,并且正在努力让透明纹理正常工作,在这个特定的栅栏示例中。

我将从最终结果开始。绿色背景/清晰的颜色从栅栏的边缘穿过——注意它不是所有的边缘,有些是好的:

右上角没有出血的原因是操作顺序。从下面的镜头中可以看出,绘制的顺序包括一些在围栏之前绘制的建筑物。但大部分是在围栏之后:

因此,一种解决方案是始终最后绘制透明纹理对象。我想探索其他解决方案,因为我的管道可能并不总是允许这样做。我正在寻找其他建议来解决这个问题,而不是对我的抽奖进行排序。

这可能是一个深度或混合功能,但我尝试了很多东西,但似乎没有任何效果(不同的混合功能、不同的丢弃 Alpha 级别、不同的背景颜色、不同的纹理设置)。

以下是我的实现的一些细节。

在我的片段着色器中,我丢弃了具有透明度的片段 - 这样它们就不会渲染到深度:

lowp vec4 texVal = texture2D(sTexture, texCoord);
if(texVal.w < 0.5)
    discard;

我正在使用一个带有 mipmapping 的巨型 PVR 纹理图集 - 纹理本身应该只有 0 或 1 用于 alpha,但混合可能会导致这种情况:

glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_LINEAR);

我在渲染时使用了以下混合:

glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);

任何修复这种出血的建议都会很棒!

编辑 - 按照 cmets 中建议的 LINEAR/NEAREST 尝试不同的纹理最小过滤器,但结果相同。注意我也尝试过 NEAREST/NEAREST 并且没有运气:

【问题讨论】:

在你的 mipmap 中尝试最近的邻居。 GL_LINEAR_MIPMAP_NEAREST 谢谢 - 刚刚试了一个,结果相同。我之前尝试过其他一些,但结果相同或相似。 你能试试吗?而不是丢弃,为片段返回透明颜色 (0,0,0,0)。 好建议 - 问题是那些片段将被渲染到深度缓冲区,导致在栅栏之后绘制的东西甚至不会传递给片段着色器。试过了,但我最终在篱笆后面几乎全是绿色的。 您是否禁用(完全 - 驱动程序控制面板)抗锯齿? 【参考方案1】:

尝试增加 alpha 过滤器限制,

lowp vec4 texVal = texture2D(sTexture, texCoord); if(texVal.w < 0.9) discard;

【讨论】:

我以前试过这个——它确实主要消除了颜色渗出。然而,它也使我无法真正看到栅栏上的格栅,它看起来好像不存在,除非我非常靠近,然后我才看到它的微光。您显然在做某事...原始纹理应该仅具有 0.0 和 1.0 的 alpha 值,因此某些东西正在混合事物,可能是线性过滤...任何其他想法或解释为为什么? 因为当你开始渲染栅栏时,当它试图计算混合函数时,它看到的唯一颜色是 glClearColor。 您可以尝试注释掉 glClear(GL_COLOR_BUFFER_BIT),这样 SRC_ALPHA 将是之前的缓冲区。 不幸的是,您的解释对我来说没有意义。我也尝试了你的建议,事情没有改变。我仍然不明白为什么栅栏的边缘是背景流血的地方。似乎很明显,由于我没有对对象进行分类,所以当我尝试在背景和栅栏之间绘制建筑物时,这些边缘没有通过深度测试,但我真的不认为它们应该是(因为我只有 1.0或 0.0 作为 alpha,所以 0.0s 应该被丢弃而不是添加到深度缓冲区中)。 如果增加 alpha 过滤器限制,消除颜色溢出这一事实意味着您的 alpha 不只是 0 或 1(texture2D 上的线性过滤)。所谓的透明片段获得深度(因为启用了深度写入),然后它使用当前可用的颜色(已经渲染的颜色 + 绿色透明颜色)计算混合函数 (glBlendFunc)。当栅栏后面的建筑物被渲染时,碎片被丢弃,因为那些绿色碎片有深度。【参考方案2】:

我知道这是一个老问题,但我在试图找到与我非常相似的 OpenGL 问题的答案时遇到了好几次。以为我会在这里为任何有类似情况的人分享我的发现。我的代码中的罪魁祸首是这样的:

glClearColor(1, 0, 1, 0);
glClear(GL_COLOR_BUFFER_BIT);

我使用粉红色透明色以便在调试时便于视觉参考。尽管它在背景和主题颜色之间混合时是透明的,但它会像问题截图中的症状一样渗入。为我解决的问题是包装此代码以掩盖 glClear 步骤。它看起来像这样:

glColorMask(false, false, false, true);
glClearColor(1, 0, 1, 0);
glClear(GL_COLOR_BUFFER_BIT);
glColorMask(true, true, true, true);

据我所知,这意味着当清除进程启动时,它仅在 Alpha 通道上运行。在这一切都重新启用以按预期继续该过程之后。如果对 OpenGL 有更深入了解的人可以更好地解释它,我很乐意听到!

【讨论】:

这对我不起作用,实际上它不应该作为刚刚被垃圾填充的颜色缓冲区。我相信它与 OpenGL 上下文设置有关,因为即使禁用了混合但启用了多重采样,我也有这种伪影。因此,在多重采样期间,渲染器会与当前的 RGB 值混合,而忽略 alpha 为零的事实......

以上是关于indesign出血问题的主要内容,如果未能解决你的问题,请参考以下文章

用indesign排版时 图片该不该超过出血线

indesign cs3的出血是啥意思

请问用indesign排书 要留出血吗?留四边出血吗?

INDESIGN设置出血的问题,急急!!

indesign如何批量制作证书

id 出血模式和 辅助信息区模式的区别