- html svg canvas图片,javascript svg转canvas和image
啊梨梨
htmlsvgcanvas图片
代码(内含注释)window.onload=function(){//获取svg内容varsvg=document.getElementById('svg-wrap').innerHTML;varcanvas=document.getElementById('canvas');varc=canvas.getContext('2d');//新建Image对象varimg=newImage();//s
- XSS 和 CSRF 有什么区别?Java Web 如何防御?
深圳卢先生
网络安全前端xsscsrf
XSS(Cross-SiteScripting)跨站脚本攻击。XSS攻击的本质是攻击者将恶意脚本注入到网页中,使这些脚本在其他用户浏览该网页时被执行。攻击类型:存储型:恶意脚本存储在数据库中(如评论、昵称),用户访问时读取执行。反射型:脚本通过URL参数传入并被网页反射执行。DOM型:前端JavaScript代码处理不当(如innerHTML)导致脚本执行。应对措施(todo待细化)输出编码(Ou
- c# asp.net webform web页面打印,可以控制需要打印和不需要打印的位置
limon758
c#(asp.net)WebFormASP.netC#C++C
[color=red]html页面的web打印示例[/color]无标题页";eprnstr="";prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);alert(prnhtml);prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));window.document.body.innerHTML=
- 应用html5画布Apicss制作,程序设计HTML5 Canvas API
weixin_39616503
复制代码代码如下:try{document.createElement("Canvas").getContext("2d");document.getElementById("support").innerHTML="OK";}catch(e){document.getElementById("support").innerHTML=e.message;}加入Canvas复制代码代码如下://取得
- 提取html中所有img标签的图片链接地址
exportfunctionimgTags(htmlString){//创建一个临时div元素,用于将HTML字符串转换为DOM对象lettempDiv=document.createElement("div");tempDiv.innerHTML=htmlString;//提取所有的img标签letimgTags=tempDiv.getElementsByTagName("img");//存储i
- JavaScript 是 Web 开发的关键技术,在 Web 开发领域有着不可替代的地位,具备以下显著优势:
javascript
JavaScript是Web开发的关键技术,在Web开发领域有着不可替代的地位,具备以下显著优势:直接嵌入HTML页面在HTML文件里能够直接嵌入JavaScript代码,这样就能在网页里动态操纵HTML元素,为用户带来交互性更强的体验。示例如下:html点击我原始文本functionchangeText(){document.getElementById("demo").innerHTML="文
- 蓝桥杯 web 图片水印生成(Dom操作、css样式动态设置)
Jasmin Tin Wei
css前端
实现方式:通过在页面上动态生成多个带有特定样式的元素,模拟出水印的效果。这些元素可以设置透明度、颜色、旋转角度等样式,使其看起来像背景水印。小技巧:如果css属性忘了,我们可以在css文件夹中写一个,会有提示答案://TODO:根据输入参数创建文字水印for(vari=0;i元素。innerHTML:设置或获取元素的内部HTML内容。在这里,ospan.innerHTML=text将变量text的
- 【实战】解决图片 Hover 抖动问题的完整指南
oliver.chau
前端开发前端
在开发网站时,很多人都会遇到一个常见问题:鼠标移动到图片上,图片放大,结果发生抖动或闪烁。这个问题往往伴随着后端接口请求、JS动态追加DOM等复杂行为。本文将深入剖析这个问题的成因,并提供一套彻底的解决方案,适合所有在前端开发中遇到此类困扰的朋友。问题现象鼠标移动到图片上,图片被放大(hover效果)图片出现抖动/闪烁/重排现象使用了innerHTML+=方式追加HTML每次hover时,JS/后
- js向数组中插入元素
fridayCodeFly
jQueryjavaScript
1、在数组的开头添加新元素-unshift()functionmyFunction(){varfruits=["Banana","Orange","Apple","Mango"];fruits.unshift("Lemon","Pineapple");varx=document.getElementById("demo");x.innerHTML=fruits;}结果:Lemon,Pineappl
- 下面的html存在什么错误?怎样修改?
2301_79698214
html前端javascript
tr{height:60px;}td,th{width:150px;text-align:center;}functionaddNode(){vartab=document.getElementById("tab");vartr=document.createElement("tr");vartd=document.createElement("td");td.innerHTML="";vartd
- 前端小食堂 | Day17 - 前端安全の金钟罩
喵爪排序
前端安全状态模式
️今日盾牌:XSS/CSRF攻防全解析1.XSS防御の三重结界//危险操作:直接渲染未过滤内容document.getElementById('content').innerHTML=userInput;//✅安全姿势一:文本转义constescapeHTML=(str)=>{constmap={'&':'&','':'>','"':'"',"'":'''};ret
- 怎样修改下面HTML中存在的错误?
2301_79698214
htmljavascript前端
functiongetTime(){vardate=newDate();vartime=date.toLocaleDateString();vartime1=date.toLocaleTimeString();vartime2=time+''+time1span.innerHTML=time2;}window.setInterval("getTime()",1000)window.alert("这
- 网页制作12-html,css,javascript初认识のJavascipt脚本基础
Ama_tor
网页制作专栏javascript开发语言ecmascript
一、JavaScript的三种基本使用方法:body|head|外部网页效果:运行代码:.html无标题文档functionn1(){document.getElementById("ama01").innerHTML="NO.3这是head中的JavaScript函数";}document.write("NO.1HELLOWORLD")//Document要小写NO.2这是body中的JavaS
- JavaScript性能优化实战
仰望丨苍穹
前端:技巧与实践javascript性能优化前端
深入探讨JavaScript性能瓶颈,分享优化技巧与最佳实践:性能瓶颈DOM操作开销大:DOM操作往往是JavaScript性能的一个关键瓶颈。每次对DOM进行访问、修改或创建,都可能触发浏览器的重排(reflow)和重绘(repaint)操作。例如频繁地使用innerHTML修改元素内容,或者大量地动态创建DOM节点,都会导致性能问题。全局作用域查找慢:在JavaScript中,变量的查找是从当
- jQuery学习笔记:属性操作、内容文本值、元素操作、尺寸、位置操作、事件注册与处理、对象拷贝(浅拷贝与深拷贝)、多库共存问题
miraculous111
jquery学习笔记前端
文章目录jQuery属性操作设置或获取元素固有属性值prop()设置或者获取自定义属性值attr()数据缓存data()jQuery内容文本值普通元素内容html()(相当于原生innerHTML)普通元素文本内容text()(相当于原生innerText)表单的val()jQuery元素操作遍历元素语法一:语法二:创建元素添加元素内部添加外部添加删除元素jQuery尺寸、位置操作jQuery尺寸
- 生成网页链接二维码
小雨滴答滴答
html5javascript
生成二维码#qrcode{margin-top:20px;}生成网页链接二维码生成二维码functiongenerateQRCode(){consturl=document.getElementById('urlInput').value;constqrcodeDiv=document.getElementById('qrcode');//清空之前的二维码qrcodeDiv.innerHTML='
- HTML之JavaScript DOM操作元素(1)
录大大i
前端HTMLJavaScripthtmljavascript前端
HTML之JavaScriptDOM操作元素(1)3.对元素进行操作1.操作元素的属性元素名.属性名=""2.操作元素的样式元素.style.样式名=""样式名"-"要进行驼峰转换3.操作元素的文本元素名.innerText只识别文本元素名.innerHTML识别文本的同时可以识别HTML代码4.增删元素(见下一篇文章)小标题/*步骤:1.获得documentDOM树window.document
- Vue学习教程-14内置指令
番茄番茄君
vue.js学习前端
文章目录前言一、v-text指令二、v-html指令三、v-cloak指令四、v-once指令五、v-pre指令六、其他指令前言Vue.js提供了许多内置指令(Directives),这些指令用于在模板中添加特殊功能。内置指令以v-前缀开始。v-text:更新元素的textContent更新元素的textContent。例如:v-html:更新元素的innerHTML更新元素的innerHTML。
- CTF-WEB: 利用Web消息造成DOM XSS
A5rZ
xss网络安全
如果索引中有类似如下代码window.addEventListener('message',function(e){document.getElementById('ads').innerHTML=e.data;});这行代码的作用是将接收到的消息内容(e.data)设置为id为'ads'的元素的HTML内容那么在受害者段执行如下代码会导致DOM污染','*')">参考实验:使用Web消息的DOM
- mounted钩子函数_vue生命周期钩子函数的正确使用方式
weixin_39572168
mounted钩子函数
先上图vue的生命周期遇到的一个问题在我的项目中,常用的生命周期钩子函数一直都是mounted,对于大部分情况,都是屡试不爽、捷报频传~但是在前几天却遭遇了一个意外,我在mounted中获取后台数据并更新data,在template中把data.fullname与一个p元素的innerHTML绑定,这是一个简单到不能再简单,普通到不能更普通的操作,打开浏览器一看,完美!fullname的数据正常显
- Vue指令v-html
慕斯-ing
Vue2.xvue.js前端经验分享
目录一、Vue中的v-html指令是什么?二、v-html指令与v-text指令的区别?一、Vue中的v-html指令是什么?v-html指令的作用是:设置元素的innerHTML,内容中有html结构会被解析为标签。二、v-html指令与v-text指令的区别?v-text指令是无论内容是什么都只会将其解析为文本,解析文本使用v-text和v-html的效果一样,但当需要解析html结构时要使用
- 在js中使用createElement创建HTML对象和元素
Dove言和
1.创建链接 var o=document.body; //创建链接 function createA(url,text) { var a=document.createElement("a"); a.href=url; a.innerHTML=text; a.style.color= "red"; o.appendChild(a); } createA("http://www.ffasp.com
- js第一次笔记
chen_zhi_yu
javascript笔记前端
JavaScript显示方案JavaScript能够以不同方式“显示”数据:使用window.alert()写入警告框使用document.write()写入HTML输出使用innerHTML写入HTML元素使用console.log()写入浏览器控制台JavaScript关键词JavaScript语句常常通过某个关键词来标识需要执行的JavaScript动作。下面的表格列出了一部分将在教程中学到
- JavaScript详解十三 ——节点操作
遇见~未来
JavaScriptJavaScript详解javascript开发语言ecmascript
目录节点操作1、创建节点2、创建文本3、添加节点(先有父母才能生孩子)4、替换节点5、删除节点6、克隆节点7、创建节点另外几种方式(1)、element.innerHTML(2)、element.innerText(3)、document.write()(4)、insertAdjacentHTML()节点操作1、创建节点docment.createElement('节点')参数:标签名字符串这些元
- 什么是虚拟DOM?
古老的渲染方式(innerHTML)在虚拟DOM出现之前,我们创建页面UI最常用的方式就是innerHTML,但是它有一个很大的问题,就是会导致很多不必要的性能开销。看下面这段代码,这是个很经典的渲染服务器返回的列表数据到HTML中:constdataList=[{label:'Lorem,ipsum.',value:112.7},{label:'Praesentium,facere.',valu
- js原生给生成的html添加点击事件,原生js为动态元素添加监听事件
习翔宇
//已存在div//创建标签functioncreatepage(){varspan=document.createElement('span')span.innerHTML=“测试span”//设置属性span.setAttribute("class","gopage");varpagenum=document.getElementById("pagenum")pagenum.appendChi
- Vue获取当前元素
ACGuan
Vue
点击methods:{clickfun(e){//e.target是你当前点击的元素//e.currentTarget是你绑定事件的元素#获得点击元素的前一个元素e.currentTarget.previousElementSibling.innerHTML#获得点击元素的第一个子元素e.currentTarget.firstElementChild#获得点击元素的下一个元素e.currentTa
- JavaScript文档内容修改
懦夫救星*
插入子元素这是标题1这是标题2这是标题3这是标题4这是标题5varh1=document.createElement('h1')h1.innerHTML="这是要插入的内容";varbody=document.querySelector('body')varbt3=document.querySelector('.biaoti3')//在什么元素前面插入内容,语法:父元素对象.insertBefo
- JavaScript-document.write和innerHTML的区别
好哈优学编程
javascript开发语言
document.write()和innerHTML都是在JavaScript中用于修改HTML文档的方法,都用于在页面上插入内容,但它们的工作方式和用途有所不同。1.document.write()用于直接将内容写入页面的HTML中。如果在页面加载后使用,会重写整个文档,导致页面内容丢失。适合在页面加载时动态插入内容,不适合用于现代网页的动态更新。示例:document.write('Hello
- 2018-05-24
萧声断未央
//1.创建一个元素vara=document.createElement('a');//2.给元素添加属性或内容:a.href='http://www.baidu.com';a.innerHTML='GOBAIDU';//3.追加到dom树父元素.appendChild(子元素);document.querySelector('div').appendChild(a);varjson='[{"e
- web报表工具FineReport常见的数据集报错错误代码和解释
老A不折腾
web报表finereport代码可视化工具
在使用finereport制作报表,若预览发生错误,很多朋友便手忙脚乱不知所措了,其实没什么,只要看懂报错代码和含义,可以很快的排除错误,这里我就分享一下finereport的数据集报错错误代码和解释,如果有说的不准确的地方,也请各位小伙伴纠正一下。
NS-war-remote=错误代码\:1117 压缩部署不支持远程设计
NS_LayerReport_MultiDs=错误代码
- Java的WeakReference与WeakHashMap
bylijinnan
java弱引用
首先看看 WeakReference
wiki 上 Weak reference 的一个例子:
public class ReferenceTest {
public static void main(String[] args) throws InterruptedException {
WeakReference r = new Wea
- Linux——(hostname)主机名与ip的映射
eksliang
linuxhostname
一、 什么是主机名
无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。但IP地址不方便记忆,所以又有了域名。域名只是在公网(INtERNET)中存在,每个域名都对应一个IP地址,但一个IP地址可有对应多个域名。域名类型 linuxsir.org 这样的;
主机名是用于什么的呢?
答:在一个局域网中,每台机器都有一个主
- oracle 常用技巧
18289753290
oracle常用技巧 ①复制表结构和数据 create table temp_clientloginUser as select distinct userid from tbusrtloginlog ②仅复制数据 如果表结构一样 insert into mytable select * &nb
- 使用c3p0数据库连接池时出现com.mchange.v2.resourcepool.TimeoutException
酷的飞上天空
exception
有一个线上环境使用的是c3p0数据库,为外部提供接口服务。最近访问压力增大后台tomcat的日志里面频繁出现
com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.v2.resourcepool.BasicResou
- IT系统分析师如何学习大数据
蓝儿唯美
大数据
我是一名从事大数据项目的IT系统分析师。在深入这个项目前需要了解些什么呢?学习大数据的最佳方法就是先从了解信息系统是如何工作着手,尤其是数据库和基础设施。同样在开始前还需要了解大数据工具,如Cloudera、Hadoop、Spark、Hive、Pig、Flume、Sqoop与Mesos。系 统分析师需要明白如何组织、管理和保护数据。在市面上有几十款数据管理产品可以用于管理数据。你的大数据数据库可能
- spring学习——简介
a-john
spring
Spring是一个开源框架,是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只能由EJB完成的事情。然而Spring的用途不仅限于服务器端的开发,从简单性,可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。其主要特征是依赖注入、AOP、持久化、事务、SpringMVC以及Acegi Security
为了降低Java开发的复杂性,
- 自定义颜色的xml文件
aijuans
xml
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="white">#FFFFFF</color> <color name="black">#000000</color> &
- 运营到底是做什么的?
aoyouzi
运营到底是做什么的?
文章来源:夏叔叔(微信号:woshixiashushu),欢迎大家关注!很久没有动笔写点东西,近些日子,由于爱狗团产品上线,不断面试,经常会被问道一个问题。问:爱狗团的运营主要做什么?答:带着用户一起嗨。为什么是带着用户玩起来呢?究竟什么是运营?运营到底是做什么的?那么,我们先来回答一个更简单的问题——互联网公司对运营考核什么?以爱狗团为例,绝大部分的移动互联网公司,对运营部门的考核分为三块——用
- js面向对象类和对象
百合不是茶
js面向对象函数创建类和对象
接触js已经有几个月了,但是对js的面向对象的一些概念根本就是模糊的,js是一种面向对象的语言 但又不像java一样有class,js不是严格的面向对象语言 ,js在java web开发的地位和java不相上下 ,其中web的数据的反馈现在主流的使用json,json的语法和js的类和属性的创建相似
下面介绍一些js的类和对象的创建的技术
一:类和对
- web.xml之资源管理对象配置 resource-env-ref
bijian1013
javaweb.xmlservlet
resource-env-ref元素来指定对管理对象的servlet引用的声明,该对象与servlet环境中的资源相关联
<resource-env-ref>
<resource-env-ref-name>资源名</resource-env-ref-name>
<resource-env-ref-type>查找资源时返回的资源类
- Create a composite component with a custom namespace
sunjing
https://weblogs.java.net/blog/mriem/archive/2013/11/22/jsf-tip-45-create-composite-component-custom-namespace
When you developed a composite component the namespace you would be seeing would
- 【MongoDB学习笔记十二】Mongo副本集服务器角色之Arbiter
bit1129
mongodb
一、复本集为什么要加入Arbiter这个角色 回答这个问题,要从复本集的存活条件和Aribter服务器的特性两方面来说。 什么是Artiber? An arbiter does
not have a copy of data set and
cannot become a primary. Replica sets may have arbiters to add a
- Javascript开发笔记
白糖_
JavaScript
获取iframe内的元素
通常我们使用window.frames["frameId"].document.getElementById("divId").innerHTML这样的形式来获取iframe内的元素,这种写法在IE、safari、chrome下都是通过的,唯独在fireforx下不通过。其实jquery的contents方法提供了对if
- Web浏览器Chrome打开一段时间后,运行alert无效
bozch
Webchormealert无效
今天在开发的时候,突然间发现alert在chrome浏览器就没法弹出了,很是怪异。
试了试其他浏览器,发现都是没有问题的。
开始想以为是chorme浏览器有啥机制导致的,就开始尝试各种代码让alert出来。尝试结果是仍然没有显示出来。
这样开发的结果,如果客户在使用的时候没有提示,那会带来致命的体验。哎,没啥办法了 就关闭浏览器重启。
结果就好了,这也太怪异了。难道是cho
- 编程之美-高效地安排会议 图着色问题 贪心算法
bylijinnan
编程之美
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class GraphColoringProblem {
/**编程之美 高效地安排会议 图着色问题 贪心算法
* 假设要用很多个教室对一组
- 机器学习相关概念和开发工具
chenbowen00
算法matlab机器学习
基本概念:
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。
开发工具
M
- [宇宙经济学]关于在太空建立永久定居点的可能性
comsci
经济
大家都知道,地球上的房地产都比较昂贵,而且土地证经常会因为新的政府的意志而变幻文本格式........
所以,在地球议会尚不具有在太空行使法律和权力的力量之前,我们外太阳系统的友好联盟可以考虑在地月系的某些引力平衡点上面,修建规模较大的定居点
- oracle 11g database control 证书错误
daizj
oracle证书错误oracle 11G 安装
oracle 11g database control 证书错误
win7 安装完oracle11后打开 Database control 后,会打开em管理页面,提示证书错误,点“继续浏览此网站”,还是会继续停留在证书错误页面
解决办法:
是 KB2661254 这个更新补丁引起的,它限制了 RSA 密钥位长度少于 1024 位的证书的使用。具体可以看微软官方公告:
- Java I/O之用FilenameFilter实现根据文件扩展名删除文件
游其是你
FilenameFilter
在Java中,你可以通过实现FilenameFilter类并重写accept(File dir, String name) 方法实现文件过滤功能。
在这个例子中,我们向你展示在“c:\\folder”路径下列出所有“.txt”格式的文件并删除。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
- C语言数组的简单以及一维数组的简单排序算法示例,二维数组简单示例
dcj3sjt126com
carray
# include <stdio.h>
int main(void)
{
int a[5] = {1, 2, 3, 4, 5};
//a 是数组的名字 5是表示数组元素的个数,并且这五个元素分别用a[0], a[1]...a[4]
int i;
for (i=0; i<5; ++i)
printf("%d\n",
- PRIMARY, INDEX, UNIQUE 这3种是一类 PRIMARY 主键。 就是 唯一 且 不能为空。 INDEX 索引,普通的 UNIQUE 唯一索引
dcj3sjt126com
primary
PRIMARY, INDEX, UNIQUE 这3种是一类PRIMARY 主键。 就是 唯一 且 不能为空。INDEX 索引,普通的UNIQUE 唯一索引。 不允许有重复。FULLTEXT 是全文索引,用于在一篇文章中,检索文本信息的。举个例子来说,比如你在为某商场做一个会员卡的系统。这个系统有一个会员表有下列字段:会员编号 INT会员姓名
- java集合辅助类 Collections、Arrays
shuizhaosi888
CollectionsArraysHashCode
Arrays、Collections
1 )数组集合之间转换
public static <T> List<T> asList(T... a) {
return new ArrayList<>(a);
}
a)Arrays.asL
- Spring Security(10)——退出登录logout
234390216
logoutSpring Security退出登录logout-urlLogoutFilter
要实现退出登录的功能我们需要在http元素下定义logout元素,这样Spring Security将自动为我们添加用于处理退出登录的过滤器LogoutFilter到FilterChain。当我们指定了http元素的auto-config属性为true时logout定义是会自动配置的,此时我们默认退出登录的URL为“/j_spring_secu
- 透过源码学前端 之 Backbone 三 Model
逐行分析JS源代码
backbone源码分析js学习
Backbone 分析第三部分 Model
概述: Model 提供了数据存储,将数据以JSON的形式保存在 Model的 attributes里,
但重点功能在于其提供了一套功能强大,使用简单的存、取、删、改数据方法,并在不同的操作里加了相应的监听事件,
如每次修改添加里都会触发 change,这在据模型变动来修改视图时很常用,并且与collection建立了关联。
- SpringMVC源码总结(七)mvc:annotation-driven中的HttpMessageConverter
乒乓狂魔
springMVC
这一篇文章主要介绍下HttpMessageConverter整个注册过程包含自定义的HttpMessageConverter,然后对一些HttpMessageConverter进行具体介绍。
HttpMessageConverter接口介绍:
public interface HttpMessageConverter<T> {
/**
* Indicate
- 分布式基础知识和算法理论
bluky999
算法zookeeper分布式一致性哈希paxos
分布式基础知识和算法理论
BY
[email protected]
本文永久链接:http://nodex.iteye.com/blog/2103218
在大数据的背景下,不管是做存储,做搜索,做数据分析,或者做产品或服务本身,面向互联网和移动互联网用户,已经不可避免地要面对分布式环境。笔者在此收录一些分布式相关的基础知识和算法理论介绍,在完善自我知识体系的同
- Android Studio的.gitignore以及gitignore无效的解决
bell0901
androidgitignore
github上.gitignore模板合集,里面有各种.gitignore : https://github.com/github/gitignore
自己用的Android Studio下项目的.gitignore文件,对github上的android.gitignore添加了
# OSX files //mac os下 .DS_Store
- 成为高级程序员的10个步骤
tomcat_oracle
编程
What
软件工程师的职业生涯要历经以下几个阶段:初级、中级,最后才是高级。这篇文章主要是讲如何通过 10 个步骤助你成为一名高级软件工程师。
Why
得到更多的报酬!因为你的薪水会随着你水平的提高而增加
提升你的职业生涯。成为了高级软件工程师之后,就可以朝着架构师、团队负责人、CTO 等职位前进
历经更大的挑战。随着你的成长,各种影响力也会提高。
- mongdb在linux下的安装
xtuhcy
mongodblinux
一、查询linux版本号:
lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noa