手机上的电子书用什么做的怎么做

手机上的电子书用什么做的怎么做,第1张

要看你用的什么 *** 作系统的手机,系统不一样用的软件也不一样,下面引用别人的你看一下:

1.首先,准备几款工具。

2款排版软件,DreamEdit /DreamEdit.rar,FineReader /FineReader_chn.rar

Java电子书制作工具,JBookMaker1.06 /JBookMaker.rar

一个将网页、EXE电子书、.htm文件等保存为TXT的软件,miniKillEBook /miniKillEBook_chn.rar

2.将TXT文件用DreamEdit(有些格式调整用FineReader比较方便)排版好,并按照自己的意愿分割文档。

3.用JBookMaker1.06将整理好的TXT文件做成.jar文件,这里举例为sample.jar

4.下载我整理好的全屏支持图标、封面的制作文档,Java电子书全屏完整制作附件

/触摸屏电子书制作附件.rar

5.用winrar打开sample.jar,解压/META-INF/MANIFEST.MF,其中Manifest是这样的

Manifest-Version: 1.0

MicroEdition-Configuration: CLDC-1.0

MIDlet-Version: 1.06

Created-By: 1.4.2 (Sun Microsystems Inc.)

MIDlet-Vendor: B&H

MicroEdition-Profile: MIDP-1.0

MIDlet-1: sample, , JavaBook

MIDlet-Name: sample

更改上面绿色标记出来的一行为:MIDlet-1: sample,/JBook.png, JavaBook

如果你做的电子书支持密码,则需要在最后面加上此行:MIDlet-DeSCRIPTion: 123456,123456是你的初始密码。

覆盖sample.jar中的原文件,winrar会提示文件更新,并保存。

6.将Java制作附近中的所有文件覆盖sample.jar中的文件,winrar会提示文件更新,并保存。

7.好了,你要的全屏,支持点触,而且有图标和封面的完美的Java电子书就制作好了!

8.制作附件中的JBook.png是图标,Logo.png是图书封面,可以自己更改。png文件可以用photoshop或者acdsee得到。

下面转载一下http://www.sjshu.net/htm_data/2/0510/424.html

支持UMD格式电子书的手机类型!

阅读器(Symbian S60 2.51 版)

支持机型

Nokia 7650 Nokia N-GageQD Nokia 6670

Nokia 3650 Nokia 6600 西门子SX1

Nokia 3660 Nokia 6260 松下X700

Nokia N-Gage Nokia 7610

诺基亚7710 版

以S90 OS为 *** 作系统的手机。包括Nokia7710。

Symbian UIQ V0.9beta版

此版本适用于UIQ2.0及2.1版本,包括了索爱的P80x等系列

PPC版本V1.0

支持机型

适合手机:使用PocketPC 2003 *** 作系统的掌上电脑及智能手机。

(PocketPC 2002版本需要.Net字库支持)

主要设备品牌:

惠普(HP): iPAQ rx3715,iPAQ1717,iPAQ hx4700,…

戴尔(DELL):Axim X50v,Axim X50,…

卡西欧(CASIO):E-200,…

优派(ViewSonic):V36,V35,…

华硕(ASUS):A730,A716,A620,…

联想(Lenovo) :天玑XP218,天玑XP210,天玑XP208,…

阅读器Smartphone版本V1.1

适合手机:多普达515,535,565,575,585神达8390TCL E777摩托罗拉MPX220,MPX200等

阅读器阅读器Java版本1.0

掌上书院KJava(Nokia系列)1.02版

Nokia3155、3155i、6155、6155i、6030、6021、6230、6230i、6101、6102、6822、6235、6235i、6020、7260、7270、6170、3220、6255、5140、6651、6650、7600

掌上书院KJava(motorola系列)A3 版

Moto 系列 大屏幕 (型号:V635,V6,V557,V980,V360,

v975,V80,V600(i),V551,V535,V501,V500,V400,V303,V300

V3,E398,E390,E375,C975,A860,A835)

掌上书院KJava(motorola系列)A1版

Moto 系列 小屏幕 (型号:V280,V270,V235,V176,V878,V872,V690)

掌上书院KJava(汉字motorola系列)M1版

Moto 系列 [带手写笔] (型号:A768(i),A760,A728)

这个地址是UMD格式电子书的下载地址,需要注册一下,是PC端的软件。http://sjshu.net/htm_data/2/0603/8458.html

1、首先,Java打开微店,进入到“我的微店”界面。点击右上角“添加”进入到添加商品界面,这个界面分别是商品图片、商品描述和商品型号。

2、我们先来看商品的图片,在这里注意的是,商品图片的第一张会默认为商品的封面和描述的第一张图片,因此,大家在选择图片的时候一定要注意,建议将所有照片上传后再长按拖动调整图片的先后顺序。

3、图片调整完毕后,在商品的详细描述中就会依次浏览图片,但有的会选择在图片之间添加一些文字,我们点击需要添加文字信息的图片,可以进行图片的美化和描述,图片美化由官方做了一些模板供大家选择,图片描述时可以添加想要说明的文字。

4、而有的为了显示微店的美观,也会将一些文字等素材直接做到图片里,那样的话直接上传图片,调整位置就可以了。Java向微信这样添加商品名称。

封面就是图片,用java的类抓取图片即可

package tool

import java.awt.BorderLayout

import java.awt.FlowLayout

import java.awt.event.ActionEvent

import java.awt.event.ActionListener

import java.io.BufferedReader

import java.io.ByteArrayOutputStream

import java.io.File

import java.io.FileOutputStream

import java.io.InputStream

import java.io.InputStreamReader

import java.net.HttpURLConnection

import java.net.URL

import java.util.LinkedList

import java.util.List

import java.util.regex.Matcher

import java.util.regex.Pattern

import javax.swing.ImageIcon

import javax.swing.JButton

import javax.swing.JFrame

import javax.swing.JPanel

import javax.swing.JScrollPane

import javax.swing.JTextField

import javax.swing.JTextPane

import javax.swing.SwingUtilities

import javax.swing.text.Style

import javax.swing.text.StyleConstants

import javax.swing.text.StyleContext

import javax.swing.text.StyledDocument

public class ImageViewer extends JFrame

{

private static final long serialVersionUID = 1L

private static final String DOWNLOADPATH = "download/"

JTextPane textPane = new JTextPane ()

LinkedList<String> initString = new LinkedList<String> ()

LinkedList<String> initStyles = new LinkedList<String> ()

LinkedList<String> path = new LinkedList<String> ()

public ImageViewer ()

{

setTitle ("图片预览下载器 v1.0")

setLayout (new BorderLayout ())

setSize (500, 300)

setLocationRelativeTo (null)

setDefaultCloseOperation (JFrame.EXIT_ON_CLOSE)

}

private void addComponents ()

{

final JTextField urltField = new JTextField ()

JPanel right = new JPanel (new FlowLayout (FlowLayout.RIGHT, 0, 0))

final JButton go = new JButton ("GO")

textPane.setEditable (false)

JScrollPane content = new JScrollPane (textPane)

go.addActionListener (new ActionListener ()

{

@Override

public void actionPerformed ( ActionEvent e )

{

String url = urltField.getText ().trim ()

resolveHTML (url, "utf8", "(?i)\\<img[^\\>]*src[\\=\\s\'\"]+([^\\>\'\"]+)[\'\"]?[^\\>]*\\>")

}

})

JPanel up = new JPanel (new BorderLayout ())

up.add (urltField, BorderLayout.CENTER)

right.add (go)

JButton download = new JButton ("DOWNLOAD")

download.addActionListener (new ActionListener ()

{

@Override

public void actionPerformed ( ActionEvent e )

{

downloadImages ()

}

})

right.add (download)

up.add (right, BorderLayout.EAST)

add (up, BorderLayout.NORTH)

add (content, BorderLayout.CENTER)

}

private void downloadImages ()

{

File fp = new File (DOWNLOADPATH)

if (!fp.exists ())

{

fp.mkdir ()

}

for ( int i = 0 i < path.size () i++ )

{

try

{

String p = path.get (i)

URL url = new URL (p)

HttpURLConnection huc = (HttpURLConnection) url.openConnection ()

huc.setRequestMethod ("GET")

huc.setConnectTimeout (5 * 1000)

InputStream is = huc.getInputStream ()

ByteArrayOutputStream baos = new ByteArrayOutputStream ()

byte[] buffer = new byte[1024]

int len = -1

while (( len = is.read (buffer) ) != -1)

{

baos.write (buffer, 0, len)

}

baos.flush ()

baos.close ()

is.close ()

huc.disconnect ()

byte[] data = baos.toByteArray ()

String name = p.substring (p.lastIndexOf ("/") + 1, p.length ())

name = name.contains (".") ? name : name + ".jpg"

FileOutputStream fos = new FileOutputStream (new File (DOWNLOADPATH + name))

fos.write (data)

fos.flush ()

fos.close ()

}

catch (Exception e)

{

continue

}

}

}

private void loadImages ( List<String> initString, List<String> initStyles, List<String> url )

{

try

{

StyledDocument doc = textPane.getStyledDocument ()

doc.remove (0, doc.getLength ())

addStylesToDocument (doc, url, initStyles)

for ( int i = 0 i < initString.size () i++ )

{

doc.insertString (doc.getLength (), initString.get (i), doc.getStyle (initStyles.get (i)))

}

}

catch (Exception e)

{}

}

protected void addStylesToDocument ( StyledDocument doc, List<String> url, List<String> initStyles )

{

Style def = StyleContext.getDefaultStyleContext ().getStyle (StyleContext.DEFAULT_STYLE)

for ( int i = 0 i < initStyles.size () i++ )

{

Style s = doc.addStyle (initStyles.get (i), def)

StyleConstants.setAlignment (s, StyleConstants.ALIGN_CENTER)

ImageIcon icon = createImageIcon (url.get (i))

if (icon != null)

{

StyleConstants.setIcon (s, icon)

}

}

}

protected static ImageIcon createImageIcon ( String url )

{

URL imgURL = null

try

{

imgURL = new URL (url)

if (imgURL != null)

{

return new ImageIcon (imgURL)

}

}

catch (Exception e)

{}

return null

}

private void resolveHTML ( String spec, String charsetName, String regex )

{

try

{

URL url = new URL (spec)

HttpURLConnection huc = (HttpURLConnection) url.openConnection ()

InputStreamReader isr = new InputStreamReader (huc.getInputStream (), charsetName)

BufferedReader br = new BufferedReader (isr)

StringBuilder builder = new StringBuilder ()

String line = null

while (null != ( line = br.readLine () ))

{

builder.append (line)

}

br.close ()

isr.close ()

huc.disconnect ()

String bs = builder.toString ()

Pattern pattern = Pattern.compile (regex)

Matcher matcher = pattern.matcher (bs)

initString.clear ()

initStyles.clear ()

path.clear ()

while (matcher.find ())

{

String p = matcher.group (1)

initString.add (" ")

initStyles.add (p)

path.add (p)

}

loadImages (initString, initStyles, path)

}

catch (Exception e)

{

return

}

}

public static void main ( String[] args )

{

SwingUtilities.invokeLater (new Runnable ()

{

@Override

public void run ()

{

ImageViewer tester = new ImageViewer ()

tester.addComponents ()

tester.setVisible (true)

}

})

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11561021.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存