小编Oky*_*kyo的帖子

Canvas 减少了 Jpeg 的图像大小,但为什么呢?

当我使用将 JPEG 图像绘制到 CanvasdrawImage()时,然后使用canvas.toDataURL()使其可保存在本地(用鼠标右键单击),则保存的 Jpeg 图像的文件大小减少了约 40%。仅当使用 Jpeg 时才如此。PNG、GIF(非压缩文件)会增大尺寸。我想,如果我将图像文件转换为 Base64,大小会增加约 130%。所以我认为画布元素有自己的集成压缩功能?如果是这样,我可以停用它吗?

代码如下所示:

var img = new Image();

img.onload = function () 
{
var width = img.width;
var height = img.height;
context.drawImage(img, 0, 0,width,height);
document.images[0].src = canvas.toDataURL('image/jpeg');//<-size = 30,2 KB (30.990 Bytes)
}
img.src = "http://www.roomeffect.de/pageslices/RSB.jpg"; //<-original file size = 58,5 KB (59.930 Bytes)
Run Code Online (Sandbox Code Playgroud)

我不知道问题是什么?

html canvas

4
推荐指数
1
解决办法
5066
查看次数

如何在 Java EE 中以编程方式添加多个 servlet

如何以编程方式映射多个 Servlets 3.0(不使用部署描述符 web.xml)

我所拥有的是非常有效的代码……但是我找不到任何将多个 servlet 添加/映射到 url-pattern 的方法:

@WebListener
public class NewServletListener implements ServletContextListener {

@Override
public void contextInitialized(ServletContextEvent sce) {
    ServletContext sc = sce.getServletContext();
    ServletRegistration sr = sc.addServlet("test", "BusinessObjects.test");  
    sr.addMapping("/test"); 
}

@Override
public void contextDestroyed(ServletContextEvent sce) {
    throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}
Run Code Online (Sandbox Code Playgroud)

我需要的是这样的:

ServletRegistration sr = sc.addServlet("testA", "BusinessObjects.testA");  
sr.addMapping("/testA"); 

ServletRegistration sr2 = sc.addServlet("testB", "BusinessObjects.testB");  
sr2.addMapping("/testB"); 

ServletRegistration sr3 = sc.addServlet("testC", "BusinessObjects.testC");  
sr3.addMapping("/testC");
Run Code Online (Sandbox Code Playgroud)

等等...

但这种方式不起作用,我事件尝试了一个数组......我做错了什么?

非常感谢你的帮助

java servlets jakarta-ee

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

角度信号 - 使用 mutate() 与使用 forEach() 反应性

考虑到下面的Angular Signals示例,我对何时应该使用 Signal API(如mutate()update() )、何时使用 Array API(如forEach)足以触发反应性并更新 UI/模板感到有些困惑?这里有什么区别呢?使用的角度版本:16.0.1

@Component({
  selector: 'my-app',
  standalone: true,
  imports: [CommonModule],
  template: `
    {{usersList() | json}}
  `,
})
export class App {
  usersList: Signal<any> = inject(UserService).getUsersList();
  constructor() {
 
  }
}

bootstrapApplication(App);

@Injectable({
  providedIn: 'root',
})
export class UserService {
  private users = signal([
    { id: 1, name: 'Peter', country: 'USA' },
    { id: 2, name: 'Party Boy', country: 'USA' },
    { id: 3, name: 'John Connor', country: 'USA' …
Run Code Online (Sandbox Code Playgroud)

signals angular angular-signals

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

标签 统计

angular ×1

angular-signals ×1

canvas ×1

html ×1

jakarta-ee ×1

java ×1

servlets ×1

signals ×1